Firefox getComputedStyle返回无计算值

时间:2014-05-12 17:02:42

标签: javascript css firefox getcomputedstyle

我在定义leftrightbottom的元素上调用getComputedStyle。

在Chrome中,这会返回'auto'作为top的值,但在Firefox中会返回像素值,但是如果您查看Firefox中的检查器,则top值不会出现。 t显示在计算窗格中。

有没有办法解决这个问题?这是一个显示问题http://jsfiddle.net/DEfusion/9NaGD/

的小提琴

2 个答案:

答案 0 :(得分:1)

通过:https://developer.mozilla.org/en/docs/Web/API/window.getComputedStyle

  

在Firefox中,值为auto的属性将返回已使用的值,而不是auto值。所以如果你申请top:auto;和底部:0;在一个高度为30px的元素上,其包含的块是高度:100px;,在请求顶部的计算样式时,Firefox将返回顶部:70px,为100px-30px = 70px。

答案 1 :(得分:1)

老问题,但我也遇到了这个问题,得到了解决方案,正如囚犯所说,Firefox做的事情与某些属性有所不同,它会返回使用的值(它会自动转换为像素)而不是解决了价值。幸运的是,自Firefox 19以来,有一个名为getDefaultComputedStyle的解决方案,仅在firefox中支持并返回已解析的值。

一种方法是测试浏览器,如果使用Firefox则使用getDefaultComputedStyle,否则使用getComputedStyle

相关问题