浅谈外边距的叠加
2016-02-26 16:29
253 查看
简单来说,当两个或更多垂直外边距相遇时,他们会合并成一个外边距。这个合并外边距的大小为相遇两垂直外边距中较大的那个。
两元素必须相毗邻(没有被内边距、边框以及任何东西隔开),这也就意味着在普通流中,父元素与其第一个子元素只会
详情请看上一条如何才能发生叠加,有一条不符合即可。
1. 父元素与其内部第一个子元素会发生
2. 只有在父元素的
外边距叠加的条件
只有普通文档流中块级元素的垂直外边距才会发生外边距叠加。行内框,浮动框与绝对定位框之间的外边距不会叠加。两元素必须相毗邻(没有被内边距、边框以及任何东西隔开),这也就意味着在普通流中,父元素与其第一个子元素只会
margin-top相邻,而其
margin-bottom值不相邻。
如何解决外边距叠加问题
如果你想问如何才能使外边距不发生叠加(~﹃~)~zZ详情请看上一条如何才能发生叠加,有一条不符合即可。
垂直外边距叠加
当两个元素垂直相毗邻时,上面元素的margin-bottom与下面元素的
margin-top会发生叠加。(两元素之间的垂直margin间隔会取其中较大的)
内外外边距叠加
当一个元素在另一个元素内部,他们的margin-top/bottom会发生叠加。具体为
1. 父元素与其内部第一个子元素会发生
margin-top叠加,
margin-top值会取两者较大的并且只会作用于父元素。
2. 只有在父元素的
height值为auto时,其与最后一个子元素的
margin-bottom值会发生叠加,同样叠加效果作用于父元素。
与自己发生叠加
假设有一个空元素,它有外边距,但是没有边框或内边距。在这种情况下,它的margin-top与
margin-bottom就碰到了一起,那么它的顶和底外边距就会发生叠加。
相关文章推荐
- Web布局连载——两栏固定布局(五)
- [div+css]晒晒最新制作专题推广页模板
- 在Windows 8.1的IE 11中屏蔽双击放大功能
- [css] line-height 百分比单位和数值单位的区别
- 异步流程控制:7 行代码学会 co 模块
- [译] React 入门
- 如何优雅处理前端异常?
- 设计更快的网页(三):字体和 CSS 调整
- 纯CSS制作的新闻网站中的文章列表
- 10条影响CSS渲染速度的写法与使用建议第1/3页
- 通过Mootools 1.2来操纵HTML DOM元素
- BS项目中的CSS架构_仅加载自己需要的CSS
- 很不错的 CSS Hack 又学了一招
- 发一个css比较清爽的写法
- CSS expression控制图片自动缩放效果代码[兼容 IE,Firefox]
- css布局网页水平居中常用方法
- CSS经典技巧十则第1/2页
- css 兼容性问题this.style.cursor=''hand''