两个块元素的外边距相邻问题
2016-11-22 本文已影响148人
心_的方向
情况一
当两个块元素处在文档的同一个级别上
上面蓝色的块元素的上下边距是10px

下面绿色的块元素的上下边距是20px

审查元素后会发现,最终导致两个块的相隔距离不是 上面块元素的外边距+下面块元素的外边距,而是会取外边距大的那一个值。
情况二
当两个元素不是处在同一级,而是一个包含和被包含的关系时
审查外层的块元素,它设置的外边距是10px

审查内层的块元素,它设置的外边距是20px

从中我们可以发现,内层元素的外边距并不是和外层元素的边界的距离,而是变成了外层元素与其余元素的距离。这显然不是我们想要的效果。
** 解决办法一 **
在外层元素上加上一个边框

** 解决办法二 **
把内层元素要设置的外边框大小,用外层元素的内补白代替。