如何让一个框在所有浏览器中填满整个网页?
我使用以下代码制作了一个网页,并在 Google Chrome 中查看了它。
<html>
<head>
<style type="text/css">
html {padding:30px; background-color:blue;}
body {margin:0px; background-color:red;}
</style>
</head>
<body>
hello world
</body>
</html>
结果正是我所期望的,一个带有 30 像素蓝色边框的红色框,填充了整个 Web 浏览器窗口。然而,当我在Firefox中查看时,红色框只有一行高的高度。在IE8中,没有蓝色边框。
如何使 Firefox 和 IE8 显示的内容与我在 Google Chrome 中看到的内容相同?
附加说明 我尝试向页面添加不同的 doctype 标签,但这只会使其看起来像 Firefox,即红色的 1 行高度。
I made a web page with the following code and viewed it in Google Chrome.
<html>
<head>
<style type="text/css">
html {padding:30px; background-color:blue;}
body {margin:0px; background-color:red;}
</style>
</head>
<body>
hello world
</body>
</html>
The result is what I expected, a red box with a 30 pixel blue border that fills the entire web browser window. However, when I view it in Firefox, the red box is only the height of one line-height. In IE8, there is no blue border.
How do I make Firefox and IE8 display the same thing as what I see in Google Chrome?
Additional notes I tried adding different doctype tags to the page, but that only made it appear like Firefox, that is, the 1 line-height of red.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
为此,我认为你必须诉诸绝对或相对定位;否则,您的高度/边距组合会将底部的蓝线推离屏幕。对于这个简单的情况,这适用于跨浏览器。希望它适用于您更复杂的用例。
For this I think you have to resort to absolute or relative positioning; otherwise, your height/margin combo will push the bottom blue line off the screen. This works cross browser for this simple case. Hopefully it works for your more complicated use case.
如果我理解正确的话,请设置你的 html &主体宽度为 100%,高度为 100%
if i understand you correctly, set your html & body width to 100% , height 100%
您可以添加一个额外的 div:
You could add an additional div: