设置 HTML 页面和浏览器窗口的大小

新手上路,请多包涵

我有一个 ID=“container” 的 div 元素。我想将此元素设置为浏览器窗口中可视区域的大小。我正在使用以下 JS 来这样做。

 var container= document.getElementById("container");
container.style.height=(window.innerHeight);
container.style.width=window.innerWidth;

但是,浏览器窗口大小大于可视大小,并且出现水平和垂直滚动条。如何使我的 HTML 页面适合浏览器窗口而不需要滚动条?

编辑:

我基本上是在问,如何使文档大小与视口大小相同?

原文由 moesef 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 671
2 个回答

这应该工作。

 <!DOCTYPE html>
<html>
    <head>
        <title>Hello World</title>
        <style>
            html, body {
                width: 100%;
                height: 100%;
                margin: 0;
                padding: 0;
                background-color: green;
            }
            #container {
                width: inherit;
                height: inherit;
                margin: 0;
                padding: 0;
                background-color: pink;
            }
            h1 {
                margin: 0;
                padding: 0;
            }
        </style>
    </head>
    <body>
        <div id="container">
            <h1>Hello World</h1>
        </div>
    </body>
</html>

背景颜色在那里,所以你可以看到它是如何工作的。将此代码复制到文件并在浏览器中打开它。尝试使用 CSS 看看会发生什么。

width: inherit; height: inherit; 从父元素中提取宽度和高度。这 应该 是默认设置,并不是真正必要的。

尝试删除 h1 { ... } CSS 块,看看会发生什么。您可能会注意到布局以一种奇怪的方式做出反应。这是因为 h1 元素正在影响其容器的布局。您可以通过在容器或主体上声明 overflow: hidden; 来防止这种情况。

我还建议您阅读 CSS Box Model

原文由 twaddington 发布,翻译遵循 CC BY-SA 3.0 许可协议

<html>
<head >
<title>Welcome</title>
<style type="text/css">
#maincontainer
{
top:0px;
padding-top:0;
margin:auto; position:relative;
width:950px;
height:100%;
}
  </style>
  </head>
<body>
 <div id="maincontainer ">
 </div>
</body>
</html>

原文由 Vikash pathak 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题