CSS3实现最后一行元素左对齐效果的方法是什么
Admin 2022-06-02 群英技术资讯 1612 次浏览
今天就跟大家聊聊有关“CSS3实现最后一行元素左对齐效果的方法是什么”的内容,可能很多人都不太了解,为了让大家认识和更进一步的了解,小编给大家总结了以下内容,希望这篇“CSS3实现最后一行元素左对齐效果的方法是什么”文章能对大家有帮助。在使用justify-content:space-between布局时,针对最后一行元素使用 justify-self: start;没有效果,查了下css3 flexbox 还未支持。
那么如何实现最后一行左对齐呢?
现有的几个方案
伪类的情况,如果最后一个元素是满的,会有占位,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);
}

同理,一行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);
}

点击这里查看demo 展示代码
每一行不固定列数的情况实现左对齐方案
这个我觉得最好的方案还是使用grid了,网上一堆,就不做讨论啦。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
本篇文章主要的介绍了关于html5 progress标签的用法介绍,还有关于html5 progress标签的属性用法的介绍。接下来就让我们一起来看这篇文章吧
在一次项目中,有一次要用到::selection伪元素,然后开发同学问我,CSS中一个冒号和两个冒号有神马区别?这好像真的是个问题,或许很多前端同学对此都有疑惑,查了些资料,证实了下两个符号的区别,简而言之:单冒号(:)用于CSS3伪类,双冒号(::)用于CSS3伪元素。W3C关于CSS3选择器的规范中有一段描述:Apseudo-elementismadeoftwocolons
这篇文章主要介绍了利用css制作3D照片墙效果,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
导航对于任何网站都很重要,本文主要介绍了HTML+CSS 实现顶部导航栏菜单制作,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
两个div默认情况下就是垂直排列的,代码如下: divstyle=border:5pxsolidred;哈哈哈/divdivstyle=border:5pxsolidblack;呵呵呵/div 效果如图: 但是有时候因为你设置了别的属性,div垂直排列怎么都不行,那该怎么办呢?解决方案有两种: 方式一:如果你想在d
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008