本文介绍: 关于使用flex弹性布局时候,如果最后一行元素未占满,那么该行元素常常是两端对齐而不是左对齐解决方法

问题

我们日常开发中,使用flex弹性布局时候,如果最后一行元素未占满,那么该行元素常常是两端对齐而不是对齐

如图所示:

我们最终想要的效果应该是既要平均分布又要最后一行依次从左向右排列

解决方法

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

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

实现效果

虽然方法可以解决

但是当每行出现多于三个元素时 就会出现

下图所示

这个时候我们需要用到方法!!!

二、使用 Grid布局 (在CSS布局方案中号称最厉害的)

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

实现效果

最后总结一下 flex布局和Grid布局有什么区别

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

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

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

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

原文地址:https://blog.csdn.net/qq_65316236/article/details/129208104

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_29088.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注