我遇到了一个令我困惑的问题.
我有一个容器,我想将背景应用到浏览器屏幕右上角的位置.里面的div有一个4em的上边距,这是推动容器div.
CSS:
#container {
background: transparent url("../images/house-bg.png") top right no-repeat scroll;
}
#wrapper {
background: #FFF;
width: 960px;
height: 600px;
margin: 4em auto 0;
border: 10px solid #C3CF21;
-moz-border-radius: 20px;
-webkit-border-radius: 20px;
border-radius: 20px;
-moz-box-shadow: 0 0 25px #444;
-webkit-box-shadow: 0 0 25px #444;
box-shadow: 0 0 25px #444;
}
Run Code Online (Sandbox Code Playgroud)
HTML:
<div id="container">
<div id="wrapper">
<div id="header">
</div>
<div id="main">
</div>
</div>
<div id="footer">
© Copyright <?php echo date("Y");?> Company, Inc.
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我希望包装器的边距位于容器div内而不是外部.
我尝试了多个显示属性和位置属性无济于事.解决它的唯一问题是 在#wrapper开始之前插入一个" ",但必须有一个CSS修复.
Mis*_*lin 24
您可以添加overflow:hidden以"关闭" #containerdiv中的上下文.
在这里,http://jsfiddle.net/kQsPR/尝试删除overflow:hidden,它将按照您的描述运行.
此行为在此处指定:http: //www.w3.org/TR/CSS2/visuren.html#block-formatting
在块格式化上下文中,每个框的左外边缘触摸包含块的左边缘(从右到左格式化,右边缘触摸).即使存在浮动也是如此(尽管盒子的线框可能因浮动而缩小),除非盒子建立了新的块格式化上下文(在这种情况下,盒子本身可能因浮动而变窄).
这正是"隐藏"以外的"溢出"能够(建立新的格式化上下文),例如,您也可以通过在#container元素中添加border-top来实现.
| 归档时间: |
|
| 查看次数: |
12580 次 |
| 最近记录: |