offsetLeft
在 IE 和 Chrome 中表现不同,如果 offsetParent
是一个 TABLE 元素并设置了左边框:
IE 确实包含边框 Chrome 不包含边框
JSFIDDLE:https://jsfiddle.net/o4qcvqp6/1/
IE 的结果:td 3:210,span 3:210
Chrome 的结果:td 3:200,span 3:210
为什么它们的行为不同,有什么方法可以得到相同的结果吗?
最佳答案
它们是不同的,因为没有固定的标准,每个浏览器都不同地对待偏移量和它们的 parent ,结果也不同。结帐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
}
关于javascript - 如果 TABLE 元素有边框,则不同的 offsetLeft(IE 与 Chrome),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34551593/