CSS布局中负margin怎样用,能实现什么效果
Admin 2022-11-18 群英技术资讯 422 次浏览
相信大家在项目的开发中都遇到过这样的需求,一行放X(X>1)个块且相邻块之间的间距相同。
1.负margin大法
设置好元素的宽度和留白占满父级的宽度,然后设置父级的margin-left为留白的负留白的宽度
1.关于负margin的实现,由于margin是基于父级计算的,会有一定的偏差,但是用于移动端上,误差可以忽略不计
上面的误差是因为ul的margin和li的margin百分比的计算基于的元素不一样导致的,但是在移动端上因为视窗的范围有限,这个差别很小,在pc上一般使用px,所以可以忽略不计。(下面还有更多的办法)
2.各大网站的实现,在元素内部进行填充,使用box-sizing,需要ie8及以上才支持
2.各大网站的实现,在元素内部进行填充,使用box-sizing,需要ie8及以上才支持
这种实现暂时还没发现什么缺点,代码也简单易懂(推荐)
3.弹性盒模型flex的实现,需要做兼容处理(旧盒子+新盒子)
3.弹性盒模型flex的实现,需要做兼容处理(旧盒子+新盒子),仅为演示,没做兼容处理
这种情况怎么能少了我们flex呢,弹性盒模型应该是专门用来处理这种情况吧,但是又有新旧盒子模型之分,各浏览器实现的都不太一样。所以一般情况两套盒子模型的属性都需要加上。(喜欢折腾就上吧,效果棒棒的)
4.classname实现
将需要特殊处理的元素加上单独的class,再做相应的处理。可以后台进行处理也可以前端处理(推荐后台处理)
4.classname实现
5.css选择器实现
:first-child :first-type-of :nth-child() 这些实现都没有什么技术难点,大家可以去查阅一下css文档,注意一下兼容性没问题了
5.css选择器实现(注意ie兼容性)
贴上全部的DEMO
差点忘了还有一种情况X=2时,设置好width,左边左浮动,右边右浮动。
其实X=3时,还有一种处理方式,左右元素分别左右浮动,中间元素相对于父级设置绝对定位,居中定位。
注意,由于不能整除的原因,不能像box-sizing那样完美的计算,但是合理的应用在项目上完全没问题。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了DIV或者DIV里面的图片水平与垂直居中的方法,需要的朋友可以参考下
HTML中跨列属性COLSPAN用法是什么,如果你正在学习HTML,不妨都看看小编所整理的资料,希望能在工作中帮助到你。
css图片翻转代码为“元素{animation:名称 时间}@keyframes 名称{100%{transform:rotateY(翻转角度)}}”;animation属性可给元素绑定翻转动画,keyframes规则可设置动画的翻转动作。
方法:1、给元素添加“width:宽度值;height:高度值;”样式,将元素设置为宽度是高度一半的矩形;2、给元素添加“border-radius:0 矩形宽度值 矩形宽度值 0;”样式,给矩形设置圆角,进而将矩形设置为右半圆样式。
CSS3动画当您在@keyframes中创建动画时,请把它捆绑到某个选择器,否则不会产生动画效果。通过规定至少以下两项CSS3动画属性,即可将动画绑定到选择器:•规定动画的名称•规定动画的时长今天介绍的是国外的CSS3AnimationCheatSheet、Animate.css、magiccss3animation,初次看到几个动画效果,感觉很酷,看了一下代 ...
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008