我正在创建一个图片滑块。我有一个父母<div>
,会掩盖一个更宽的孩子:
<div class="viewport">
<div class="strip">
<div class="item">
<img src="1.png">
</div>
<div class="item">
<img src="2.png" >
</div>
<div class="item">
<img src="3.png">
</div>
</div>
</div>
我的父级具有固定宽度,并在内容溢出时显示滚动条:
.viewport{
width:400px;
height: 100px;
overflow:scroll;
margin-top:100px;
}
它的孩子.strip
应该展开以将其所有子项包含为水平行。在过去,为了确保.strip
可以包含其子女而不清除,我会:
由于我定位现代浏览器,我想也许使用flexbox
可以解决问题:
.strip{
display: flex;
height:100px;
}
.item{
width:150px;
flex-basis:150px;
margin-right:10px;
}
它非常接近,但我的所有item
都堆叠在一起:
是否有某种方法可以将它们分开,或者是否无法绕过.viewport
的宽度约束?
答案 0 :(得分:1)
如何display:inline-block;
使用.item
而white-space:nowrap;
使用.strip
呢?
.strip{
height:100px;
white-space:nowrap;
font-size:0;
}
.item{
width:150px;
display:inline-block;
margin-right:10px;
}
根据fiddle ...
这样您就不会受限于支持Flexbox的浏览器。