我想设计一个带有横幅和iframe的网页.我希望iframe可以填充所有剩余的页面高度,并在浏览器调整大小时自动调整大小.是否有可能在没有编写Javascript代码的情况下完成它,只有CSS?
我尝试设置height:100%iframe,结果非常接近,但iframe试图填充整个页面高度,包括30px横幅div元素的高度,所以我得到了不必要的垂直滚动条.这不完美.
更新说明:请原谅我没有好好描述这个问题,我在DIV上尝试了CSS margin,padding属性来成功占据网页的整个提醒高度,但这个技巧对iframe没有用.
<body>
<div style="width:100%; height:30px; background-color:#cccccc;">Banner</div>
<iframe src="http: //www.google.com.tw" style="width:100%; height:100%;"></iframe>
</body>Run Code Online (Sandbox Code Playgroud)
任何想法都表示赞赏.
我的问题类似于IFRAME和冲突的绝对位置,但我特别想知道为什么你不能在iframe中设置左/右或上/下并让它工作.
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
iframe { position: absolute; display: block; top: 0; bottom: 0; left: 10px; width:100px; border: 1px solid black;}
div { position: absolute; display: block; top: 0; bottom: 0; left: 200px; width:100px; border: 1px solid black;}
</style>
</head>
<body>
<iframe></iframe>
<div></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
div占用了完整的浏览器高度.iframe高150px.在Chrome 17,Firefox 11和IE9中也是如此.显然这不是浏览器的怪癖.HTML5规范中有一些内容表示您无法在iframe上设置左/右或上/下以设置高度.
关于iframe(与divs)有什么特别之处?