如果TABLE元素有边框(IE与Chrome),则偏移量不同



如果offsetParent是TABLE元素,则offsetLeft在IE和Chrome中的行为不同

IE确实包含边界Chrome不包括边界

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

IE的结果:td 3:210,span 3:210

Chrome的结果:td 3:200,span 3:210

为什么他们的行为不同,有没有办法得到同样的结果?

它们是不同的,因为没有设置标准,每个浏览器对偏移及其父级的处理方式不同,结果也不同。请查看Bugzilla上的此错误报告,以便进行良好的讨论。

你可以检查正在使用的浏览器并相应地显示,尽管我不建议使用这个

var isChrome = !!window.chrome && !isOpera;
var isIE = false || !!document.documentMode;
if(isChrome){
  //format for Chrome
}
else if(isIE){
  //format for IE
}

最新更新