flex布局换行左对齐并且间距相同

1,083 阅读1分钟

- 在这里想问问同志们,还有其他简单的方法也可以实现这种效果吗?

在flex布局下,确定每行显示个数,模块宽度一样,最后一行模块个数不确定,模块左对齐,并且每个模块的间隔相同。

效果:

9296117-46e2a301e1adaf49.webp

HTML:

<div class="box">
     <div class="item"></div>
     <div class="item"></div>
     <div class="item"></div>
     <div class="item"></div>
     <div class="item"></div>
     <div class="item"></div>
</div>

CSS:

.box{
    display:flex;
    flex-wrap: wrap;
    padding:0 2%;
    box-sizing:border-box;
    }
.box .item{
        height:100px;
        background:#d00;
        margin-bottom:2%;
        flex:0 0 23.5%;  // 关键代码
        margin-right:2%; // 关键代码
        }
.box .item:nth-of-type(4n){ // 关键代码
        margin-right:0; 
        }