我给了一个 div 100% 的高度,我想要以 px 为单位的实际高度。
我怎样才能找出那个div的高度?
4 回答
使用 jquery,当容器是 div 的 id 时,您可以使用它:
$(document).ready(function() {
alert($('#container').height());
});
使用 jQuery,您应该能够使用:
$('#div').height();
如前所述,使用 jQuery,您可以使用:
$(document).ready(function(){
$("#container").height();
});
请注意虽然方式height
是由 jQuery 计算的。从文档中引用:
请注意, .height() 将始终返回内容高度,无论 CSS box-sizing 属性的值如何。
这意味着,它将忽略您可能已应用的任何边距、填充和边框。
没有人提到您可以利用的替代方案来获得您感兴趣的确切高度如下:
内部高度()
$(document).ready(function(){
$("#container").innerHeight();
});
如果您不仅需要元素高度,还需要包含任何填充,请使用此选项。
外部高度()
$(document).ready(function(){
$("#container").outerHeight(); //Include padding and borders
$("#container").outerHeight(true); //Include padding, borders and margins
});
如果您不仅需要元素高度,还需要包含任何填充、边框和边距(如果将 true 作为参数传递),请使用此选项。
见演示
该演示展示了如何将 300px 的高度应用于 div。此外,css 应用了 20px 的 margin-top、50px 的 padding-top 以及 5px 的边框,它们都会影响总高度。
height() 的演示输出
请注意,尽管 jQuery
height()
仍然只返回 300 像素,忽略通过 css 添加到元素的额外高度。
innerHeight() 的演示输出
注意 jQuery 如何
innerHeight()
返回 350 像素,即 div 的 300 + 填充的 50。
outerHeight() 的演示输出
请注意 jQuery 如何
outerHeight()
返回 360 像素,即 div 的 300 + 填充的 50 + 边框的 10(底部 5 和顶部 5)。
outerHeight(true) 的演示输出
请注意 jQuery 如何
outerHeight(true)
返回 380 像素,即 div 的 300 + 填充的 50 + 边框的 10(底部 5 和顶部的 5) + 边距的 20。
这是一个不使用jquery的解决方案
document.querySelector("#yourElementIdGoesHere").getBoundingClientRect();
此函数将返回具有以下属性的对象
- 底部
- 高度
- 剩下
- 正确的
- 最佳
- 宽度
只需从那里获取宽度和高度,它们以像素为单位
—N