我有一个 <ul>
,这是一个弹性盒子和一堆 <li>
在它是弹性项目。
我试图让 <li>
有一个灵活的宽度,使用最小宽度和最大宽度之间的两个尺寸。只要他们在同一条线上,它就工作得很好。但是,当它们换行时,新行上的 <li>
将尽可能多地使用空间。这意味着它们在第一条线上很小,在第二条线上很大,当它们只有几个的时候。
有没有一种方法可以告诉弹性包装保持项目的宽度后,包装,同时保持灵活的宽度?
包装演示:
我的代码是这样的:
<ul>
<li>
<figure>
<img src="http://placekitten.com/g/250/250">
</figure>
</li>
<li>
<figure>
<img src="http://placekitten.com/g/100/100">
</figure>
</li>
<!-- ... -->
</ul>
还有 CSS:
ul {
display: flex;
flex-wrap: wrap;
}
li {
min-width: 40px;
max-width: 100px;
flex: 1 0 0;
}
这里有一个关于 codepen 的实时示例,其中包含一些额外的注释 ,调整窗口大小以查看它的包装。