我有一个任意高度的元素。 元素具有属性box-sizing:border-box。 如果使用jquery指定100px高度,结果将是元素的高度等于120。 可能有什么不对?
JS:
$('#element').height(100);
的CSS:
#element{
background-color: green;
height: 50px;
width: 300px;
padding: 10px;
box-sizing: border-box;
}
答案 0 :(得分:3)
height()
函数仅设置元素的高度,如果要将总高度(包括填充,边框和边距)设置为100,请使用outerHeight()
$('#element').outerHeight(100);
使用height()
,你强迫jQuery将元素本身的高度设置为100,这就是为什么即使你使用box-sizing: border-box
,它也不会有任何区别。
供进一步参考: http://api.jquery.com/outerheight/
我希望它有所帮助