浏览器如何确定元素的 offsetParent

一个元素的 offsetParent ,要么是 null, 要么是<body>,要么是该元素的某一个祖先定位元素。

offsetParent 是 null

  • 元素为<body>元素

  • 元素不具有布局(比如,display: none

  • 元素尚未被加入 DOM

  • 元素postion: fixed;因为该元素的位置是相对于视图区域,而不是其他元素的

offsetParent 是 <body>

元素不是任何一个定位元素的后代,也不满足任何返回 null 的条件

offsetParent 是某个祖先定位元素

如果元素是定位元素的后代,那么离它最近的那个祖先定位元素就说它的 offsetParent。如果元素不是定位元素的后代,但却是 <td><th><table>元素,那么其 offsetParent 就是最近的上述元素。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 CSSOM全称CSS对象模型,涉及两部分内容,第一部分和操作样式表相关,第二部分和元素尺寸相关,本文介绍第二...
    江枫阅读 3,035评论 1 10
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,826评论 1 92
  • 简介浏览器可以被认为是使用最广泛的软件,本文将介绍浏览器的工 作原理,我们将看到,从你在地址栏输入google.c...
    听风阁阅读 3,318评论 0 7
  • <a name='html'>HTML</a> Doctype作用?标准模式与兼容模式各有什么区别? (1)、<...
    clark124阅读 3,584评论 1 19
  • 在这个周五的高峰时刻,我打开打车APP打车回家。 我一边在街边等待,一边注视着:那些绿色的光点,在手机屏幕上抖动,...
    ProjectAlpha阅读 156评论 0 2