【发布时间】:2012-07-31 18:39:25
【问题描述】:
我需要调整 iframe 的大小以匹配其内容,但我尝试过的高度属性不考虑带有position: fixed 的元素。
假设一个文档只有两个元素的 absolute 和 fixed 类。
body { padding: 0; margin: 0; }
.absolute {
position: absolute;
height: 100px;
}
.fixed {
position: fixed;
height: 200px;
}
-
html.scrollHeight0(Opera/Firefox 中的视口高度) -
html.offsetHeight0 -
body.scrollHeight0(Chrome 中的视口高度) -
body.offsetHeight0 -
body.outerHeight0
如果我添加html { position: relative; },html.scrollHeight 在 Chrome 中将是 100px,但没有值将是 200px。一开始我也遇到了浮点数的问题,但我通过向body 添加一个clearfix 解决了这个问题。
我在这里做了一个jsbin:http://jsbin.com/ehixiq
如果无法获得真实身高,我最好的解决方法是什么?我只需要支持最新版本的 Opera、Chrome 和 Firefox。
【问题讨论】:
-
这里的答案非常优雅地解决了这个问题:stackoverflow.com/questions/16928101/…
标签: javascript css iframe