我希望能够实现类似于这样的布局:
问题在于我需要仅使用一个UL标签来放置所有的框,并且横向排列。所以我做了以下尝试:我创建了一个UL,里面的列表项都向左浮动,但是并没有达到想要的效果,如下图所示:
我无法理解为什么第二行的列表项会这样排列,而不是嵌套在第一行中呢?
![enter image description here](https://istack.dev59.com/1oy9p.webp)
![enter image description here](https://istack.dev59.com/YLx26.webp)
查看演示
您可以通过column-count和column-gap来实现
HTML
<ul>
<li>
<img src="http://placehold.it/200x300/" />
</li>
<li>
<img src="http://placehold.it/200x400/" />
</li>
<li>
<img src="http://placehold.it/200x500/" />
</li>
<li>
<img src="http://placehold.it/200x500/" />
</li>
<li>
<img src="http://placehold.it/200x400/" />
</li>
<li>
<img src="http://placehold.it/200x200/" />
</li>
</ul>
CSS
ul {
list-style: none;
margin: 0;
-moz-column-count: 3;
-moz-column-gap: 0px;
-webkit-column-count: 3;
-webkit-column-gap: 0px;
column-count: 3;
column-gap: 0px;
width: 660px;
margin: 10px;
}
li {
width: 200px;
}
float:left;
获得的行为。想象一下盒子从一侧漂浮进入,由于第一行已经满了,所以其他盒子使用第二行。空白处属于第一行。 - kleinfreunddisplay:inline-block;
来实现这一点。 - kleinfreund