您现在的位置是:网站首页> 编程资料编程资料
谈谈CSS的边距合并之我的理解简单的CSS叠加外边距示例CSS外边距合并代码css 空白外边距互相叠加的解决方法CSS外边距叠加的问题,CSS教程详解css边距重叠的几种解决方案
2021-09-07
842人已围观
简介 通过交流发现师弟们对外边距合并不是很理解,如果想要深入了解margin这个神奇的属性,那可得费一番功夫了,下面与大家分享下我对外边距合并的理解
今天通过和一些师弟的交流,发现他们对外边距合并不是很理解。
其实浅析CSS的外边距合并的话,是很容易明白是怎么一回事儿的。但是如果想要深入了解margin这个神奇的属性,那可得费一番功夫了。
我是一个菜鸟,在这里当然不会解释得太复杂,在这里我只是想谈谈我对外边距合并的理解。
其实要理解清楚什么是外边距合并,最简单的方法就是自己动手试试。我认为,理解外边距合并的关键就在于理解这句话:“只要接触,就合并”。
什么叫“只要接触,就合并”呢?其实理解起来就是:当两个元素的外边距相接触,它们就融合了。什么时候就能接触呢?就是当两个元素都没有边框属性和内边距属性。
还是听不懂?那就不是我所力所能及的范畴了。因为你没有理解什么是盒模型了。
其实CSS的外边距合并就是这么一点点东西。我拿出来讲是因为,看了好多人的代码,都喜欢把margin和padding混在一起。不管用的是padding还是margin,只要最终显示效果和自己想象的一致,他们觉得就达到目的了。有时候用margin,遇到了边距合并却不知道怎么回事,或者说不知道怎么解决,然后就想出各种法子“制造”自己想要的效果(例如加多一个空元素撑开留白)。但是其实我想说,这样使用margin和padding,根本就不是W3C制定padding和margin时候的本意。
好吧,小小地吐槽了一下,也不想说多什么东西,因为别人写的比我更深入更细致。这里给几篇文章的地址,有助于大家加深对margin和padding使用的理解。
https://www.jb51.net/w3school/css/css_margin_collapsing.htm
https://www.jb51.net/css/37633.html
https://www.jb51.net/css/55475.html
其实浅析CSS的外边距合并的话,是很容易明白是怎么一回事儿的。但是如果想要深入了解margin这个神奇的属性,那可得费一番功夫了。
我是一个菜鸟,在这里当然不会解释得太复杂,在这里我只是想谈谈我对外边距合并的理解。
其实要理解清楚什么是外边距合并,最简单的方法就是自己动手试试。我认为,理解外边距合并的关键就在于理解这句话:“只要接触,就合并”。
什么叫“只要接触,就合并”呢?其实理解起来就是:当两个元素的外边距相接触,它们就融合了。什么时候就能接触呢?就是当两个元素都没有边框属性和内边距属性。
还是听不懂?那就不是我所力所能及的范畴了。因为你没有理解什么是盒模型了。
其实CSS的外边距合并就是这么一点点东西。我拿出来讲是因为,看了好多人的代码,都喜欢把margin和padding混在一起。不管用的是padding还是margin,只要最终显示效果和自己想象的一致,他们觉得就达到目的了。有时候用margin,遇到了边距合并却不知道怎么回事,或者说不知道怎么解决,然后就想出各种法子“制造”自己想要的效果(例如加多一个空元素撑开留白)。但是其实我想说,这样使用margin和padding,根本就不是W3C制定padding和margin时候的本意。
好吧,小小地吐槽了一下,也不想说多什么东西,因为别人写的比我更深入更细致。这里给几篇文章的地址,有助于大家加深对margin和padding使用的理解。
https://www.jb51.net/w3school/css/css_margin_collapsing.htm
https://www.jb51.net/css/37633.html
https://www.jb51.net/css/55475.html
相关内容
- css3中background新增的4个新的相关属性用法介绍css3中transform属性实现的4种功能详解CSS3.0(Cascading Style Sheet) 层叠级联样式表纯CSS3实现div按照顺序出入效果CSS3实现列表无限滚动/轮播效果css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效CSS3实现的侧滑菜单CSS3实现的3D隧道效果用CSS3画一个爱心css3 实现文字闪烁效果的三种方式示例代码六种css3实现的边框过渡效果
- 通过CSS让TD自动换行CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- Hack 只针对IE的写法浅谈原生页面兼容IE9问题的解决方案新版chrome浏览器设置允许跨域的实现css hack之\9和\0就可能对hack IE11\IE9\IE8无效css区分ie8/ie9/ie10/ie11 chrome firefox的代码解决CSS浏览器兼容性问题的4种方案常见的浏览器兼容性问题(小结)border-radius IE8兼容处理的方法浅谈遇到的几个浏览器兼容性问题base64图片在各种浏览器的兼容性处理 对常见的css属性进行浏览器兼容性总结(推荐)
- Css样式--背景样式详解CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- Css样式--文本样式详解CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- CSS样式定义的优先级顺序介绍CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- Css样式--字体样式和链接样式详解CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- css div实现的遮罩层完美兼容IE6-IE9 FireFoxCSS实现鼠标移至图片上显示遮罩层效果SCSS移动端页面遮罩层效果的实现及常见问题解决CSS实现带遮罩层可关闭的弹窗效果
- CSS写的简单表格示例CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- CSS怎么将背景图左移/上移/右移10pxCSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题