我为div元素设置了一个边距,但body元素也获得了这个边距。CSS边缘推动身体元素
考虑以下代码:
<!-- HTML -->
<body>
<div>
</div>
</body>
<!-- CSS -->
<style>
html,body {
height:100%;
margin:0;
padding:0;
outline:1px solid blue;
}
div {
margin:20px;
outline:1px solid red;
}
</style>
这是结果和问题:
到目前为止,我已经加入了border:1px solid transparent;
属性body元素解决了这个问题。这会破坏100%的高度,因为由于1px
边框会出现滚动条。为什么会发生?
可能的解决方案(感谢您的帮助):添加padding-top:1px
和margin-top:-1px
,这样一来100%的高度不得到与滚动条和您的保证金,避免崩溃毁了。
您正在使用哪种DOCTYPE? – PseudoNinja
<!doctype html> – Rich
最好的解决方案可能是像在@Chris Nicholson提供的链接中指出的那样,在父级上添加'overflow:auto;' – jamietelin