css3 flex布局 justify-content:space-between 最后一行左对齐


Posted in HTML / CSS onJanuary 02, 2020

在使用justify-content:space-between布局时,针对最后一行元素使用 justify-self: start;没有效果,查了下css3 flexbox 还未支持。

那么如何实现最后一行左对齐呢?

现有的几个方案

  • 使用标签元素补全缺的item
  • 使用grid
  • 使用伪类

伪类的情况,如果最后一个元素是满的,会有占位,grid会有兼容问题,又不想新增标签。

每一行固定列数的情况实现左对齐方案

由于每一列的数目都是固定的,因此,我们可以计算出最后一个元素的margin-right值保证完全左对齐。

假设每一行只有3列元素,那么当最后一个元素是第二列(即li:last-child:nth-child(3n + 2))的情况,才需要进行 margin-right处理,距离是一个元素的宽度+空隙宽度。

假设元素宽度是$width,上述情况所需要的距离:(100% - 3 * $width) / 2 + $width => (100% - $width) / 2

.list1  li:last-child:nth-child(3n + 2) {
  margin-right: calc((100% - $width) / 2);
}

css3 flex布局 justify-content:space-between 最后一行左对齐

同理,一行4列的情况,需要处理两种情况,最后一个元素在第二列 和 最后一个元素在第三列的情况。

.list2  li:last-child:nth-child(4n + 2) {
  margin-right: calc((100% - $width) / 3 * 2);
}
.list2  li:last-child:nth-child(4n + 3) {
  margin-right: calc((100% - $width) / 3 * 1);
}

css3 flex布局 justify-content:space-between 最后一行左对齐

点击这里查看demo 展示代码

每一行不固定列数的情况实现左对齐方案

这个我觉得最好的方案还是使用grid了,网上一堆,就不做讨论啦。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

HTML / CSS 相关文章推荐
布局和排版教程 纯css3实现图片三角形排列
Oct 17 HTML / CSS
使用CSS3的ruby-position固定注音位置的用法示例
Jul 05 HTML / CSS
纯CSS3大转盘抽奖示例代码(响应式、可配置)
Jan 13 HTML / CSS
详解如何在css中引入自定义字体(font-face)
May 17 HTML / CSS
基于CSS3的animation属性实现微信拍一拍动画效果
Jun 22 HTML / CSS
HTML5计时器小例子
Oct 15 HTML / CSS
HTMl5的存储方式sessionStorage和localStorage详解
Mar 18 HTML / CSS
html5中JavaScript removeChild 删除所有节点
May 16 HTML / CSS
深入解析HTML5中的Blob对象的使用
Sep 08 HTML / CSS
HTML5本地数据库基础操作详解
Apr 26 HTML / CSS
HTML5播放实现rtmp流直播
Jun 16 HTML / CSS
前端使用canvas生成盲水印的加密解密的实现
Dec 16 HTML / CSS
详解CSS3新增的背景属性
Dec 25 #HTML / CSS
CSS3实现缺角矩形,折角矩形以及缺角边框
Dec 20 #HTML / CSS
css3实现背景动态渐变效果
Dec 10 #HTML / CSS
css3动画 小球滚动 js控制动画暂停
Nov 29 #HTML / CSS
CSS3实现酷炫的3D旋转透视效果
Nov 21 #HTML / CSS
CSS实现半透明边框与多重边框的场景分析
Nov 13 #HTML / CSS
CSS3 新增选择器的实例
Nov 13 #HTML / CSS
You might like
让这部DC动画新作刷新你的认知
2020/03/03 欧美动漫
PHP生成条形码大揭秘
2015/09/24 PHP
PHP给文字内容中的关键字进行套红处理
2016/04/12 PHP
Windows2003下php5.4安装配置教程(IIS)
2016/06/30 PHP
解决 firefox 不支持 document.all的方法
2007/03/12 Javascript
Js 订制自己的AlertBox(信息提示框)
2009/01/09 Javascript
js获取IFRAME当前的URL的方法
2013/11/13 Javascript
ajax请求乱码的解决方法(中文乱码)
2014/04/10 Javascript
jquery的总体架构分析及实现示例详解
2014/11/08 Javascript
jQuery实现防止提交按钮被双击的方法
2015/03/24 Javascript
老生常谈JavaScript数组的用法
2016/06/10 Javascript
jQuery中deferred对象使用方法详解
2016/07/14 Javascript
引入JavaScript时alert弹出框显示中文乱码问题
2017/09/16 Javascript
详解用函数式编程对JavaScript进行断舍离
2017/09/18 Javascript
原生js实现3D轮播图
2020/03/21 Javascript
VUE 单页面使用 echart 窗口变化时的用法
2020/07/30 Javascript
解决vue props传Array/Object类型值,子组件报错的情况
2020/11/07 Javascript
详解Vue的七种传值方式
2021/02/08 Vue.js
浅谈Python中的数据类型
2015/05/05 Python
Python3中的f-Strings增强版字符串格式化方法
2020/03/04 Python
python 按钮点击关闭窗口的实现
2020/03/04 Python
python实现批量命名照片
2020/06/18 Python
Python paramiko使用方法代码汇总
2020/11/20 Python
澳大利亚在线家具、灯饰和家居装饰店:LivingStyles
2018/11/20 全球购物
Myholidays美国:在线旅游网站
2019/08/16 全球购物
你们项目是如何进行变更控制的
2015/08/26 面试题
物理教师自荐信范文
2013/12/28 职场文书
难忘的一课教学反思
2014/04/30 职场文书
党员十八大心得体会
2014/09/12 职场文书
社区党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
学习委员竞选稿
2015/11/20 职场文书
人民币使用说明书
2019/04/17 职场文书
导游词之吉林花园山
2019/10/17 职场文书
漫改真人电影「萌系男友是燃燃的橘色」公开先导视觉图
2022/03/21 日漫
WINDOWS 64位 下安装配置mysql8.0.25最详细的教程
2022/03/22 MySQL
《游戏王:大师决斗》将推出新卡牌包4月4日上线
2022/03/31 其他游戏