这里有一个可用的代码:http://jsfiddle.net/WVm5d/(你可能需要将结果窗口调大以查看居中效果)
问题
代码能够正常工作,但我不喜欢使用display: table;
。这是我使wrap-class对齐居中的唯一方法。我认为如果能够使用display: block;
或display: inline-block;
会更好。是否有其他方法解决居中对齐的问题?
对容器添加固定宽度对我来说不是一个选项。
如果JS Fiddle链接在未来失效,我也会在此贴出我的代码:
body {
background: #bbb;
}
.wrap {
background: #aaa;
margin: 0 auto;
display: table;
overflow: hidden;
}
.sidebar {
width: 200px;
float: left;
background: #eee;
}
.container {
margin: 0 auto;
background: #ddd;
display: block;
float: left;
padding: 5px;
}
.box {
background: #eee;
border: 1px solid #ccc;
padding: 10px;
margin: 5px;
float: left;
}
.box:nth-child(3n+1) {
clear: left;
}
<div class="wrap">
<div class="sidebar">
Sidebar
</div>
<div class="container">
<div class="box">
Height1
</div>
<div class="box">
Height2<br />
Height2
</div>
<div class="box">
Height3<br />
Height3<br />
Height3
</div>
<div class="box">
Height1
</div>
<div class="box">
Height2<br />
Height2
</div>
<div class="box">
Height3<br />
Height3<br />
Height3
</div>
</div>
<div class="sidebar">
Sidebar
</div>
</div>
white-space: nowrap;
等属性。 - User2body
中的所有元素都居中对齐,怎么办?这听起来对我来说有点过度了。 - phil294