And*_*iga 9 css jquery google-chrome
我有简单的div标签,绝对定位在HTML文档中.当在Chrome中我确定了"正确"的CSS规则,以像素为单位的固定值,它的"左"的规则为"自动",然后随即使用jQuery的确定它的左侧位置,位置()方法,返回的值是什么这种:122.6363525390625.这同样适用于所述偏移()方法.
另一方面,Firefox没有这个问题.
你能告诉我为什么会这样,有没有办法阻止它?提前致谢!
Jon*_*Jon 10
因为当你使用百分比宽度时,数学就是这样做的.想象一下,你有这个布局:
<div style="width: 111px">
<div style="width: 50%"></div>
</div>
Run Code Online (Sandbox Code Playgroud)
内部元素的宽度计算为55.5像素,而不是自然数.根据确切的CSS属性,这可以很容易地计算到更多的小数位.
Chrome 使用子像素渲染,这就是您看到此行为的原因.
最后:我不确定为什么这会导致你出现问题,当然如果你想要四舍五入到你可以使用的自然数Math.round(x).