css-flex超出往左对齐

阅读 65

2023-09-22

关于 flex 布局下 justify-content: xx,很多朋友都想让其换行后,靠左进行依次排列(默认会平均分布居中)。

css-flex超出往左对齐_flex

想要实现这种效果

<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>
        <!-- <div class="item">元素</div> -->
    </section>
</body>

<style>
.content {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;/* 替代space-between布局方式 */
}

.item {
    flex: 1;
    height: 120px;
    background-color: #cacaca;

    /* 间隙为5px */
    margin: 0 5px 5px 0;
    /* END */

    /* 这里的10px = (分布个数3-1)*间隙5px, 可以根据实际的分布个数和间隙区调整 */
    width: calc((100% - 10px) / 3);
    /* END */

    /* 加入这两个后每个item的宽度就生效了 */
    min-width: calc((100% - 10px) / 3);
    max-width: calc((100% - 10px) / 3);
    /* END */
}

.item:nth-child(3n) {
    /* 去除第3n个的margin-right */
    margin-right: 0;
}
</style>

精彩评论(0)

0 0 举报