如果TABLE元素具有边框(IE与Chrome),则不同的offsetLeft

时间:2015-12-31 21:06:28

标签: javascript html google-chrome internet-explorer

如果offsetLeft是一个TABLE元素,则

offsetParent在IE和Chrome中的行为有所不同:

IE确实包含边框 Chrome不包含边框

JSFIDDLE:https://jsfiddle.net/o4qcvqp6/1/

IE的结果:td 3: 210 ,跨度3:210

Chrome的结果:td 3: 200 ,范围3:210

为什么他们表现不同,有没有办法得到相同的结果?

1 个答案:

答案 0 :(得分:1)

它们是不同的,因为没有设定标准,并且每个浏览器以不同的结果处理偏移量和它们的父母。结帐this bug report on Bugzilla进行了很好的讨论。

您可以检查正在使用的浏览器并进行相应显示,但我不建议使用此

var isChrome = !!window.chrome && !isOpera;
var isIE = false || !!document.documentMode;

if(isChrome){
  //format for Chrome
}
else if(isIE){
  //format for IE
}