设置CSS属性line-height时高度计算不正确

时间:2010-11-09 16:54:18

标签: javascript jquery height css

我需要根据所包含的ul精确设置父li元素的高度。但是只要我有一个带有小数位的line-height CSS属性,整个计算就不正确了。有时计算的高度有时太大,有时太小(例如Firefox中的jsfiddle link 1px)。当它是一个较大的列表时,它经常相差几个像素。当设置父ul的高度时,它的内容太小了。

即使设置了line-height,我怎样才能计算出精确值?

2 个答案:

答案 0 :(得分:3)

如果您只定位最近的浏览器,则可以使用window.getComputedStyle返回屏幕上绘制的所有css属性。

答案 1 :(得分:0)

这可能是一个愚蠢的解决方案,因为我很可怕和懒惰,但这是我疯狂的解决方法:

头脑中:

<script type="text/javascript"> 
function fixmyheight(h) {
   document.getElementById('fixme').style.height = h + "px";
}
</script>

然后在身体里:

<ul id="fixme">
    <li>Item 1</li>
    <li>Item 2</li>
    <li>Item 3</li>
    <li>Item 4</li>
    <li>Item 5</li>
    <li>Item 6</li>
</ul>

抱歉,我一开始搞砸了。现在修好了。