从浏览器设置边距 window
Setting margins from browser window
所以,我需要将我的网站放在一个容器内,该容器从浏览器 window 的各个方面都有 30 像素的边距,如下所示:http://i58.tinypic.com/1ik8xg.png .
到目前为止,我的元素上有这些样式:
body, html {
height: 100%;
}
#wrap {
height: 100%;
border:1px solid black;
margin-left:30px;
margin-right:30px;
margin-top:30px;
margin-bottom:30px;
}
但在这种情况下,我得到了一个 y 滚动条,并且我的 #wrap 容器最终变高了。我的最后一个示例在调整浏览器大小时出现问题 window..
您可以使用 calc
来计算 100% - 60px。请注意,这不适用于 IE8 和 Opera Mini。我猜你可以先设置 height: 100%
,然后再使用 calc
的规则。这应该为少数不支持计算的浏览器设置默认值。
body, html {
height: 100%;
}
#wrap {
height: calc(100% - 60px);
border:1px solid black;
margin-left:30px;
margin-right:30px;
margin-top:30px;
margin-bottom:30px;
box-sizing: border-box;
}
<div id="wrap">Hello</div>
另一种使用 position: absolute 的方法。
还要注意删除 html 和正文中的填充和边距。这似乎也消除了滚动条。
body, html {
height: 100%;
padding: 0;
margin: 0;
}
#wrap {
position: absolute;
top: 30px;
left: 30px;
bottom: 30px;
right: 30px;
border: 1px solid blue;
}
<div id="wrap">Hello</div>
所以,我需要将我的网站放在一个容器内,该容器从浏览器 window 的各个方面都有 30 像素的边距,如下所示:http://i58.tinypic.com/1ik8xg.png .
到目前为止,我的元素上有这些样式:
body, html {
height: 100%;
}
#wrap {
height: 100%;
border:1px solid black;
margin-left:30px;
margin-right:30px;
margin-top:30px;
margin-bottom:30px;
}
但在这种情况下,我得到了一个 y 滚动条,并且我的 #wrap 容器最终变高了。我的最后一个示例在调整浏览器大小时出现问题 window..
您可以使用 calc
来计算 100% - 60px。请注意,这不适用于 IE8 和 Opera Mini。我猜你可以先设置 height: 100%
,然后再使用 calc
的规则。这应该为少数不支持计算的浏览器设置默认值。
body, html {
height: 100%;
}
#wrap {
height: calc(100% - 60px);
border:1px solid black;
margin-left:30px;
margin-right:30px;
margin-top:30px;
margin-bottom:30px;
box-sizing: border-box;
}
<div id="wrap">Hello</div>
另一种使用 position: absolute 的方法。 还要注意删除 html 和正文中的填充和边距。这似乎也消除了滚动条。
body, html {
height: 100%;
padding: 0;
margin: 0;
}
#wrap {
position: absolute;
top: 30px;
left: 30px;
bottom: 30px;
right: 30px;
border: 1px solid blue;
}
<div id="wrap">Hello</div>