我在 HTML 页面中有以下元素:
<body>
<div style="height:100%; width:100%">
<div style="height:100px;"></div>
<div id="container" style="height:25%; width:50%">
</div>
现在我想使用 jQuery(或纯 JavaScript)获取 div container
的高度(以像素为单位)。
我该怎么做?
$('#container').height() // returns `0`
最佳答案
在 CSS 中,高度作为百分比不起作用,除非父元素也定义了高度。并且父项的高度将不起作用(如果它是百分比),除非其父项定义了高度,等等。
在这种情况下,尝试将其添加到您的 CSS 中:
html, body {
height: 100%;
}
更新:您的代码返回 0
的另一个原因是 DIV 没有任何子节点(甚至没有文本节点)。如果您添加了一个子节点,它会返回该子节点的高度,但它仍然不会返回 25% 的值,直到您向所有以百分比定义高度的元素的父元素添加显式高度。
关于javascript - jQuery 获取以像素为单位的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9808124/