float
设置浮动和外间距
每个方块设置左浮动,宽度30%,左外间距2.5%。
100%=(2.5%+30%)+(2.5%+30%)+(2.5%+30%)+2.5%
代码
.item {
width: 30%;
margin-left: 2.5%;
margin-bottom: 10px;
background: pink;
height: 100px;
float: left;
}
<body>
<ul class="list">
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
</ul>
</body>
width:30%; 表示是父级元素宽度的30%。
flex
display:flex; 将当前元素定义为弹性容器。
.list {
margin-top: 20px;
display: flex;
flex-wrap: wrap;
}
.item {
width: 30%;
margin-left: 2.5%;
margin-bottom: 10px;
background: pink;
height: 100px;
}
<body>
<ul class="list">
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
</ul>
</body>
使用 flex 布局实现需要注意一个点,就是需要用 flex-wrap 属性来使其换行。