尽管Guffa的答案在很多情况下都有效,但在某些情况下,您可能不希望左侧和/或右侧填充物成为中心div的父级。在这些情况下,可以在中心使用块格式上下文,并向左右浮动填充div。这是代码
HTML:
<div class="container">
<div class="left"></div>
<div class="right"></div>
<div class="center"></div>
</div>
CSS:
.container {
width: 100px;
height: 20px;
}
.left, .right {
width: 20px;
height: 100%;
float: left;
background: black;
}
.right {
float: right;
}
.center {
overflow: auto;
height: 100%;
background: blue;
}
我觉得与嵌套的div相比,此元素层次结构更自然,并且可以更好地表示页面上的内容。因此,可以将边框,填充和边距正常应用于所有元素(即:这种“自然”超出了样式并具有分枝)。
请注意,这仅适用于div和其他共享“默认填充宽度为100%”属性的元素。输入,表和其他可能需要将它们包装在容器div中并添加更多的CSS来恢复这种质量。如果您很不幸遇到这种情况,请与我联系,我将深入研究CSS。
jsfiddle在这里:jsfiddle.net/RgdeQ
请享用!