问题:子盒子设置上外边距,父盒子会随着子盒子塌陷,嵌套块元素垂直外边距合并

<style>
        *{
            padding: 0;
            margin: 0;
        }
        .father {
            height: 500px;
            width: 500px;
            background: rgb(184, 184, 167);
        }
        .son {
            width: 200px;
            height: 200px;
            background: rgb(199, 20, 20);
            margin-top: 100px;
        }
</style>

<body>
<div class="father">
<div class="son">子盒子设置上外边距,父盒子会随着子盒子塌陷,嵌套块元素垂直外边距合并</div>
</div>
</body>

如下图所示,是希望出现的效果,然而实际情况是父盒子会随着子盒子一起下来
外边距塌陷如何解决?

三个解决办法:

 /* 解决办法 1:为父盒子设置1像素的上边框,颜色一样,但是会撑大父盒子,所以父盒子高度减1*/
        .father {
            border-top: 1px solid rgb(184, 184, 167);
            height: 499px;
        }
/* 解决方法 2:为子盒子设置1像素的上内边距,也会撑大子盒子,所以子盒子高度减1 */
        .son {
            padding-top: 1px;
            height: 199px;
        }
/* 解决方法 3:父盒子设置overflow:hidden ,触发bfc ,不会撑大盒子*/
        .father {
            overflow: hidden;
        }

相关文章:

  • 2021-11-08
  • 2022-12-23
  • 2022-12-23
  • 2022-01-02
  • 2022-01-12
  • 2022-01-19
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-05-01
  • 2021-12-27
  • 2021-04-07
  • 2021-08-03
  • 2021-07-10
  • 2021-08-25
  • 2022-12-23
相关资源
相似解决方案