css外边距合并
来源:互联网 发布:吉郎pop美工族手册 编辑:程序博客网 时间:2024/05/22 10:59
在平时的敲代码过程中,我们往往会遇到一个问题:margin-top不起作用。这是为什么呢?用官方的话来说:
外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距。合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者。
应该是语文没学好,我看了好几遍也没能理解上面这段话,所以我用了一个更容易理解的方式来划分一下:
CSS外边距合并 细分的话可以分为3种情况:
1).当一个元素出现在另一个元素上面时,第一个元素的下外边距与第二个元素的上外边距会发生合并。
#big1{width:100px;height:100px;background: blue;margin-bottom:0px;}#small1{width:100px;height:100px;background:yellow;margin-top:20px;}
这是只设置了下面div的上外边距的图片:
#big1{width:100px;height:100px;background: blue;margin-bottom:10px;}#small1{width:100px;height:100px;background:yellow;margin-top:20px;}
这是同时设置了上面div的下外边距和下面div的上外边距的图片:
我们对比上面两个图片,会发现这两个div垂直方向的距离完全一样,从而得出结论,
当一个元素出现在另一个元素上面时,第一个元素的下外边距与第二个元素的上外边距会发生合并。他们的外边距等于两个外边距中的较大值。
2) 当一个元素包含在另一个元素中时(假设没有内边距或边框把外边距分隔开),它们的上和/或下外边距也会发生合并。
#big2{width:100px;height:100px;background: blue;margin-top:0px;}#small2{width:50px;height:50px;background:yellow;margin-top:20px;}
这是只设置了里面div的上外边距的图片:
#big2{width:100px;height:100px;background: blue;margin-top:20px;}#small2{width:50px;height:50px;background:yellow;margin-top:0px;}
这是只设置了外面div的上外边距的图片:
#big2{width:100px;height:100px;background: blue;margin-top:20px;}#small2{width:50px;height:50px;background:yellow;margin-top:10px;}
这是设置了外面div的上外边距大于里面div的上外边距的图片:
我们对比上面三个图片,会发现这三个外面div的上外边距完全一样,从而得出结论,
当一个元素包含在另一个元素中时(假设没有内边距或边框把外边距分隔开),它们的上和/或下外边距也会发生合并。他们的外边距等于两个外边距中的较大值。里面的元素与外面的元素无法产生上外边距。
3)假设有一个空元素,它有外边距,但是没有边框或填充。在这种情况下,上外边距与下外边距就碰到了一起,它们会发生合并:
#big3{background: blue;margin-top:20px;margin-bottom:30px;}#small3{background:yellow;}
在这段css代码中,我设置上面的div没有高度,没有任何填充,并且设置了它的上外边距和下外边距。上外边距小于下外边距。
下面请看图片:
#big3{background: blue;margin-top:30px;margin-bottom:20px;}#small3{background:yellow;}
在这段css代码中,我设置上面的div没有高度,并且没有任何填充,并且设置了它的上外边距和下外边距。上外边距大于下外边距。
下面请看图片:
通过对比上面三个图片,会发现下面div距离顶部的高度一样,从而得出结论,
假设有一个空元素,它有外边距,但是没有边框或填充。在这种情况下,上外边距与下外边距就碰到了一起,它们也会发生合并。他们的外边距仍然等于两个外边距中的较大值。
关于CSS外边距合并的实例,请戳下面链接:点击打开链接
上面三种情况就是我对外边距合并的一些理解,既然出现了外边距合并这种情况,当然也会有解决的方案,通过查阅资料以及自己多次的实验,我发现 : 只有普通文档流中块框的垂直外边距才会发生外边距合并。行内框(inline,inline-block)、浮动框(float)或绝对定位(position)之间的外边距不会合并。
这是只设置了里面div的上外边距的图片:
阅读全文
0 0
- CSS外边距合并
- css外边距合并
- CSS 外边距合并
- CSS外边距合并
- CSS 外边距合并
- CSS外边距合并
- CSS 外边距合并
- Css外边距合并
- CSS外边距合并
- CSS外边距合并
- CSS 外边距合并
- CSS外边距合并
- css外边距合并
- CSS 外边距合并
- css外边距合并
- CSS 外边距合并
- css外边距合并
- css 外边距合并问题
- sql语句优化
- 【数据结构】中缀表达式转换为后缀表达式
- java 推箱子 两个箱子 两个位置 ,练习java二维数组
- POJ.3667 Hotel ( 线段树 )
- 考试规律
- css外边距合并
- ReactNative开发(三)之布局详解
- vlc隐藏toolbar
- Android 视频播放我选这个
- leetcode 股票收益问题
- PHP之array_rand()方法
- Git使用方法总结——Git 安装
- react入门之搭配环境(一)
- ubantu解压zip文件乱码问题
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
如何查社保清单
本地宝查社保
1233社保查询
当地社保查询
社保查询个人信息查询
个人社保信息查询网
社保12333
居民社保查询
社保个人网上查询
网上查社保个人缴费情况
网上社保查询
全国12333社保查询网系统
兵团社保查询个人账户
查询社保缴纳情况
社保个人查询网
社保热线
医疗保险查询系统
医疗保险个人账户查询
汕头市社会保障卡余额查询
惠州社会保障卡查询个人账户
新农合医疗保险查询网
社会保障查询个人账户查询
济南社会保险查询系统
成都社会保险卡个人账户查询
安阳社会保障卡查询个人账户
苏州社会保障卡查询个人账户
梅州市社会保障卡查询
绍兴社会保险个人查询
医疗保险查询余额
社会保险卡查询
社会保险查询个人账户查询
太原市医疗保险个人帐户查询
萍乡社会保障卡查询
柳州市社会保险查询
社会保障网上查询
佛山社会保障卡查询
惠州市社会保障卡网上服务厅
福建医保查询个人账户
全国社会保险综合查询平台
成都社保局
12333.