尝试在另一个div中水平居中和裁剪(如果需要)一个div。
可以使用背景图像实现相同的效果,但在这种情况下,我的内容不是单个图像。
Fiddle: http://jsfiddle.net/7aMhY/1/
HTML:
<div class="poster_container">
<div class="poster_row">
<div class="poster" style="width: 210px;">1</div>
<div class="poster" style="width: 210px;">2</div>
<div class="poster" style="width: 210px;">3</div>
<div class="poster" style="width: 210px;">4</div>
<div class="poster" style="width: 210px;">5</div>
</div>
</div>
CSS(层叠样式表):
.poster_container {
text-align: center;
border: dotted;
border-color: red;
background-color: #0ff;
margin: auto;
overflow:hidden;
}
.poster_row {
text-align: center;
margin: auto;
display: inline-block;
white-space:nowrap;
oveterflow:hidden;
border: dotted;
border-color: blue;
max-width: 100%;
}
.poster {
border: dotted;
display: inline-block;
border-color: green;
background-color: green;
height: 315px;
font-size:280px;
color: white;
}
只要poster_container div比poster_row div宽,内容就会居中。但一旦poster_row变宽,它的内容就会向左对齐并仅在右侧裁剪。
我想让内部的poster_row div从两侧中心平均裁剪。外部div将占据视口的100%,因此宽度是任意的。理想情况下,我希望内部div的宽度也是任意的,这样我就可以轻松更换内容而不必改变CSS。