11

我有这个html结构:

<div class=container>
    <div class=content>
            Content goes here
    </div>
</div>

我正在使用以下方法读出 div.content 高度:

var height = $("div.content").height();

将返回 17(在我的测试用例中)

到目前为止效果很好(将其与使用萤火虫的实际高度进行比较时)。问题是 - 当填充连续文本 > 2 行时,我得到了错误的值。2 行会给我 34(正确),但 3 行也会返回 34,尽管实际高度是 51。当然,当填写大量文本时,结果值都是错误的。对我来说似乎是一个 jquery bug .. 任何解决方法的想法?谢谢

ps:在 IE 中完美运行,firefox 返回错误值..

4

1 回答 1

37

改为使用$("div.content").outerHeight();

如果您还想包括所有边距和填充,则在括号中添加 -true- 。 $('div.content').outerHeight(true);

如果您没有非常好的CSS 重置,或者正在查看旧版浏览器(即 6/7),跨浏览器的高度可能会有所不同,但如果重置良好,它们的差异将非常微小。

jsFiddle 演示

于 2012-08-29T18:21:48.830 回答