外边距合并

2016-10-31  本文已影响0人  黄露hl

1. 常见外边距合并的类型

(1)普通文档流里垂直相邻的兄弟块级元素边距合并。
(2)父容器的上边距与第一个子元素margin合并,下边距与最后一个子元素margin合并。
(3)空元素上下margin合并为。


2. 合并后margin的计算

11-1.jpg
11-2.jpg


3. 父子外边距合并的解决方法:

(1) 给父容器加上边框。
(2) 给父容器加上padding。
(3)触发父容器的BFC,触发方式有:

另外BFC容器还可以包含浮动元素,也就是说容器中的子元素都设置浮动时,容器的高度也不会塌陷。

    如:.box{background:pink;
           /* border: 1px solid transparent; */
         padding:1px;}

效果如图:


边距2.jpg

4. 相邻兄弟元素外边距合并解决方法:

   1. 浮动元素、绝对定位元素和inline-block不会产生外边距合并。
   给box2添加display:inline-block后上下两个元素边距没有合并了。
边距3.jpg

2. 将这两个相邻块级元素中的一个放入一个容器中,并且给这个容器设置边框或者触发容器的BFC。
如图,把box1放入容器ct里面,ct设置了透明边框后,box1和box2的外边距没有合并了

边距4.jpg

介于上下margin合并这个问题,在布局时最好只设置一边的margin,如margin-top或margin-bottom。

上一篇 下一篇

猜你喜欢

热点阅读