垂直外边距合并有一种情况是嵌套元素的垂直外边距合并,当父级元素没有设定外边距时,在顶部或者底部边缘的子元素的垂直外边距就会和父级的合并,导致父级也有了“隐形”的垂直外边距。

  当父级元素的min-height遇上边缘子级元素的垂直外边距后,垂直外边距合并问题就变得更加隐蔽了。

  当父级元素设定了高度,子级元素的外边距就不会影响到父级元素了;当父级元素没有设定高度,子级元素的外边距就会影响到父级元素,不过这时候边缘子元素贴着父元素的边缘,所以问题很容易被发现;而当父元素设定了min-height,并且边缘子元素距离父级底部有一段距离的时候,这个问题就很容易被忽略了。

  父级元素设定了min-height,边缘子元素的垂直外边距依旧会影响到父元素的,不管父元素的底部距离边缘子元素多远。这一点要注意,是跟设定死高度不同的。

  至于怎么解决,简单来说就是和不设定高度的时候一样。

相关文章:

1. 什么是BFC

2. CSS外边距合并(塌陷/margin越界)

3. 垂直外边距合并问题

05-08 08:10