我将顶部或底部和左侧或右侧值设置为几个元素.当我尝试使用Firefox(16.0.2)访问这个值时,我得到一个错误的顶部值(一个特定的值而不是auto)
CSS
div { bottom:200px; left:0px; top:auto; right:auto; }
JS
$(function(){ var top = $('div').css('top'); alert(top); });
您可以在这里尝试:http://jsfiddle.net/UEyxD/2/(在Chrome / Safari中运行良好)
任何想法如何防止这种情况?我想得到
解决方法
这是由浏览器和它如何解释风格,它有点不在你的控制之下.然而,特别的CSS和jQuery解决方法你应该能够绕过它.例如,如果您不需要绝对定位该项目,则可以将其删除,或将其更改为position:static;
看看这个question.
As to why Chrome and IE return different values: .css() provides a unified gateway to the browsers’ computed style functions,but it doesn’t unify the way the browsers actually compute the style. It’s not uncommon for browsers to decide such edge cases differently.