完美解决 flex 实现一行三个,显示多行,左对齐

效果图

代码

html 复制代码
<body>
    <section class="content">
        <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 class="item">元素</div>
    </section>
</body>
<style>
    .content {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        background-color: skyblue;
    }
    .item {
        flex: 0 0 calc((100% - 10px)/3);
        height: 120px;
        background-color: pink;
        /* 间隙为5px */
        margin: 0 5px 5px 0;
    }
    .item:nth-child(3n) {
        /* 去除第3n个的margin-right */
        margin-right: 0;
    }
</style>

方法二

css 复制代码
.item {
    /* flex: 0 0 calc((100% - 10px)/3); */
    width: calc((100% - 10px) / 3);
    height: 120px;
    background-color: pink;
    /* 间隙为5px */
    margin: 0 5px 5px 0;
}
相关推荐
BillKu12 分钟前
Vue3 + Vite 中使用 Lodash-es 的防抖 debounce 详解
前端·javascript·vue.js
一只小风华~19 分钟前
HTML前端开发:JavaScript的条分支语句if,Switch
前端·javascript·html5
橙子家20 分钟前
Select 组件实现【全选】(基于 Element)
前端
超级土豆粉21 分钟前
HTML 语义化
前端·html
bingbingyihao28 分钟前
UI框架-通知组件
前端·javascript·vue
wordbaby29 分钟前
React Router 预渲染的工作原理和价值(Pre-rendering)
前端·react.js
依旧天真无邪1 小时前
Chrome 优质插件计划
前端·chrome
逝缘~1 小时前
小白学Pinia状态管理
前端·javascript·vue.js·vscode·es6·pinia
光影少年1 小时前
vite原理
前端·javascript·vue.js
陌上烟雨寒1 小时前
vue手写一个步骤条steps
javascript·css·vue