Javascript $(';';).css(';height';)返回的是计算高度,而不是JQuery中的css高度
我使用CSS定义了元素的height属性。如果计算的高度与定义的高度不同,则$(element).css('height')返回计算的高度,而不是我在css中定义的高度。我认为Javascript $(';';).css(';height';)返回的是计算高度,而不是JQuery中的css高度,javascript,jquery,css,Javascript,Jquery,Css,我使用CSS定义了元素的height属性。如果计算的高度与定义的高度不同,则$(element).css('height')返回计算的高度,而不是我在css中定义的高度。我认为css()返回css中定义的高度 这里有一把小提琴来说明我的意思: 我希望css()返回100px,但它返回20px。我用的是Chrome 如何使用JQuery/Javascript获得定义的高度(100px) Edit:在本例中,我设置了一个max height,以模拟不支持height的selects浏览器中发生的情况
css()
返回css中定义的高度
这里有一把小提琴来说明我的意思:
我希望css()
返回100px
,但它返回20px
。我用的是Chrome
如何使用JQuery/Javascript获得定义的高度(100px
)
Edit:在本例中,我设置了一个max height
,以模拟不支持height
的select
s浏览器中发生的情况。我使用以下命令检查浏览器是否正确计算高度:
if($('select').outerHeight()<parseInt($('select').css('height'))){
// browser doesn't support "height" for "select"s
}
if($('select').outerHeight()$('select').height()
是select的高度,不带填充
$('select')。css('height')
是实际高度(有填充)
$('select').css('height')
=$('select').outerHeight();
如果添加边框:0;
并删除最大高度
,您将获得正确的高度,因为除非边框为0,否则高度不会应用于选择,不确定这实际上是否也适用于ie。。.css()
既不返回指定值,也不返回计算值,而是返回已使用的值,在本例中,该值受到最大高度的限制。
可能会有所帮助:唯一的方法是非常幼稚。我会不惜一切代价尝试避免它。链接@Derek中有解决方案朕會功夫 尽管如此,我还是发布了这篇文章。你是对的。我在Derek的链接中查看了解决方案,现在我决定手动为每个元素添加数据高度
属性。数据高度
包含CSS中定义的相同值。op需要CSS规则中定义的高度
值。