最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

offsetParent算法分析_基础知识

来源:动视网 责编:小采 时间:2020-11-27 20:48:29
文档

offsetParent算法分析_基础知识

offsetParent算法分析_基础知识:当调用元素 A 的 offsetParent 属性时,必须按以下算法返回元素。 以下任一条件为真时,返回 null,并停止本算法。 A 是根元素。 A 是 HTML 的 body 元素。 元素 A 的 position 属性计算值是 fixed。注 1 如果 A 是 HTML 元素 area,并且
推荐度:
导读offsetParent算法分析_基础知识:当调用元素 A 的 offsetParent 属性时,必须按以下算法返回元素。 以下任一条件为真时,返回 null,并停止本算法。 A 是根元素。 A 是 HTML 的 body 元素。 元素 A 的 position 属性计算值是 fixed。注 1 如果 A 是 HTML 元素 area,并且


当调用元素 A 的 offsetParent 属性时,必须按以下算法返回元素。

以下任一条件为真时,返回 null,并停止本算法。
A 是根元素。
A 是 HTML 的 body 元素。
元素 A 的 position 属性计算值是 fixed。注 1
如果 A 是 HTML 元素 area,并且在其上级元素链中有 HTML 元素 map,返回上级元素链中距 A 最近的 HTML 元素 map,并停止本算法。注 2
如果以下任一条件为真时,返回距 A 最近的符合下述条件的上级元素,并停止本算法。
上级元素的 position 属性计算值不是 static。注 3
上级元素是 HTML 的 body 元素。注 4
A 的 position 属性计算值是 static,上级元素是 td、th 或 table。
返回 null。
前面已经提到,以上是工作草案的内容,所以与现行的浏览器不一定一致,注释如下:

注 1 Firefox 不适用;IE 6 不适用;DOCTYPE 使 IE 7 不支持 fixed 时不适用(以下简称 IE 6 模式)。
注 2 Firefox 不适用。
注 3 上级元素的 position 属性计算值是 fixed,并且 IE 6 或者 IE 6 模式不适用。
注 4 IE 7 模式中,如果元素的 position 属性计算值是 absolute 或 relative,返回元素 HTML,而不是 BODY。
总结

由此看出,获得 offsetParent 在各个浏览器中,各个浏览器的各个版本中,同一版本的不同模式中,都有不同的算法,实在有些麻烦。所以还是建议将其理解为通过 offsetParent 循环和 offsetLeft、offsetTop 可以获得控件在浏览器中的绝对位置即可。

但庆幸的是有一种常见布局在各种浏览器中 offsetParent 是一样的,那就是:外层元素 div 的 position 计算值是 relative、absolute 时,内层元素 div 的 offsetParent 总是外层元素 div。

文档

offsetParent算法分析_基础知识

offsetParent算法分析_基础知识:当调用元素 A 的 offsetParent 属性时,必须按以下算法返回元素。 以下任一条件为真时,返回 null,并停止本算法。 A 是根元素。 A 是 HTML 的 body 元素。 元素 A 的 position 属性计算值是 fixed。注 1 如果 A 是 HTML 元素 area,并且
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top