美文网首页
flex布局space-between,最后一行左对齐

flex布局space-between,最后一行左对齐

作者: 刘其瑞 | 来源:发表于2019-11-10 17:17 被阅读0次

    space-between 是俩端对齐,估计出现问题:


    最后一行被撑开了,不是我们想要的!!那如何让最后一左对齐呢?

    方法一、添加几个空item
    根据布局列数添加空item,比如每行最大n列,那么在最后添加n个空item即可

    <html>
    <style>
      .item {
        width: 32%;
        height: 60px;
        margin-top: 10px;
      }
    
      .itemempty {
        height: 0px;
        width: 32%;
      }
    
      .box {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
      }
    </style>
    
    <body>
      <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 class="item"></div>
        <div class="item"></div>
        <div class="itemempty"></div>
        <div class="itemempty"></div>
        <div class="itemempty"></div>
      </div>
    </body>
    
    </html>
    

    方法二,使用after
    网上常见的after方法,实现效果只是左对齐,而且中间间隔并不好控制

    .box:after {
        content: "";
        flex: auto;
     }
    

    解决方法: 在父元素的after伪元素中宽度设置成与item的宽一样即可(仅三个内可用)

    &:after { 
        content: ""; 
        width:32%;
    } 
    

    最终实现效果:


    6AE282720D9F1E7D49ABF69368A49FC0.png

    相关文章

      网友评论

          本文标题:flex布局space-between,最后一行左对齐

          本文链接:https://www.haomeiwen.com/subject/olaobctx.html