我使用CSS定义了元素的高度属性。如果计算的高度与定义的高度不同,则$(元素).css(“高度”)返回计算的高度,而不是我在CSS中定义的高度。我认为css()返回CSS中定义的高度。
这里有一个小提琴来说明我的意思:http://jsfiddle.net/D9rQR/ --我期望css()返回100px,但它正在返回20px。我在用Chrome。
如何使用JQuery/Javascript获得定义的高度(100px在小提琴中)?
编辑:在示例中,我设置了一个max-height来模拟不支持select的浏览器中发生的事情。我使用以下方法来检查浏览器是否正确地计算高度:
if($('select').outerHeight()<parseInt($('select').css('height'))){
// browser doesn't support "height" for "select"s
}但是,这不起作用,因为$('select').css('height')总是返回计算出来的高度。
发布于 2014-07-02 02:11:26
$('select').height()是没有填充的select的高度
$('select').css('height')是实际高度(有填充)
$('select').css('height') = $('select').outerHeight();
发布于 2014-07-02 02:15:01
如果您添加border:0;并删除max-height,您将得到正确的高度,因为高度不会应用于选择,除非边框为0,不确定这是否也适用于ie。
https://stackoverflow.com/questions/24521819
复制相似问题