【发布时间】:2014-09-17 15:03:52
【问题描述】:
基本上,我想要做的是在我的页面顶部有一个单一的薄工具栏,其中有一排不同的 DIV 容器用作按钮。我希望这些按钮更新工具栏下方 iframe 的内容。问题是我在工具栏下方的 iframe 只有 150px 的高度。具体来说,当我指定<!DOCTYPE html> 时会发生这种情况,但是当我没有指定此 HTML5 文档类型时,它可以正常工作。
我对此进行了一些阅读,这看起来像是is that HTML5 no longer covers percentages to be able to set the width and height of an iFrame. 的原因但是现在我被卡住了,因为我无法让 iFrame 增长到工具栏下窗口剩余高度的 100%。我什至创建了一个 iframe_container DIV 并将 iframe 放入其中,iframe_container 位于 height=%100 但我仍然无法使其正常工作。
HTML:
<!DOCTYPE html>
<html>
<body>
<div class="header_bar">
<div class="tab_active" onclick="location.href='...'">Tab1</div>
<div class="tab_inactive" onclick="location.href='...'">Tab2</div>
<div class="tab_inactive" onclick="location.href='...'">Tab3</div>
</div>
<div class="iframe_container">
<iframe id="main_iframe" class="main_iframe" frameborder="0" src="...">
</iframe>
</div>
</body>
</html>
CSS:
.iframe_container {
width: 100%;
height: 100%;
}
.main_iframe {
width: 100%;
height: 100%;
}
.header_bar {
float: none;
width: 100%;
height: 30px;
}
.tab_inactive {
float: left;
}
.tab_active {
float: left;
}
我已经尝试过 iframe 的无缝属性,但它似乎也没有帮助。到目前为止,我发现的最佳选择是将{position: absolute; top: 30px; bottom: 0px;} 添加到我的 iframe_container 类中,这确实解决了 iframe 大小问题,但是它引入了一些非常奇怪的滚动行为,包括右侧的双滚动条。关于如何确保 iframe 填满窗口底部并仍保持 HTML5 兼容的任何想法?谢谢
【问题讨论】:
-
在最坏的情况下,使用 JS 检索页面尺寸并显式设置 iframe 大小。