flex:弹性盒子布局多行,最后一行左对齐

16,710次阅读
没有评论

共计 753 个字符,预计需要花费 2 分钟才能阅读完成。

flex:弹性盒子布局多行,最后一行左对齐

咱们想要实现平均分布的同时也要实现最后一排依次从左向右排列的效果,如上图所示。

第一种方式:

外层容器给弹性盒子布局,并且给外层盒子一个 after 伪类元素

.wrap{
   width: 200px;
   height: 200px;
   display: flex;
   // 使其换行展示
   flex-wrap: wrap;
   // 且首个元素放置于起点 末尾元素放置于终点
   justify-content: space-between;
}
 
//  此处可以理解为使用伪元素进行占位
.wrap::after{
  content: "";
  width: 60px;
} 

flex:弹性盒子布局多行,最后一行左对齐

 但是 当每行出现多于三个元素时 就会出现如下图情况

flex:弹性盒子布局多行,最后一行左对齐

 解决以上问题就要使用到第二种方法了。

第二种方式:

使用 Grid 布局(号称是最强大的的 CSS 布局方案

.wrap{
   margin: 50px auto;
   width: 200px;
   height: 200px;
   display: grid;
   justify-content: space-between;
   // 划分列 功能函数关键字 repeat(auto-fill,45px)// 根据子元素的盒子的份额自动计算可以平铺几次
   grid-template-columns: repeat(auto-fill,45px);
   // grid-gap 是 row-gap 和 column-gap 的简写形式。grid-gap: 0 1px;
}

代码实现以后就会出现下面的效果图

flex:弹性盒子布局多行,最后一行左对齐

 

最终来总结下 flex 布局和 Grid 布局的区别:

flex 布局是一维布局  Grid 布局是二维布局 

flex 布局是轴线布局 只能指定 ” 项目 ” 针对轴线的位置

Grid 布局则是将容器划分成“行 ” 和“列”,产生单元格,然后指定 ” 项目所在”的单元格

注意:Grid 布局存在兼容性问题 具体使用还是要根据需求

原文地址: flex:弹性盒子布局多行,最后一行左对齐

    正文完
     0
    Yojack
    版权声明:本篇文章由 Yojack 于2024-10-07发表,共计753字。
    转载说明:
    1 本网站名称:优杰开发笔记
    2 本站永久网址:https://yojack.cn
    3 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
    4 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
    5 本站所有内容均可转载及分享, 但请注明出处
    6 我们始终尊重原创作者的版权,所有文章在发布时,均尽可能注明出处与作者。
    7 站长邮箱:laylwenl@gmail.com
    评论(没有评论)