CSS margin外边距塌陷、合并问题

本文详细介绍了CSS中父子关系和兄弟关系块元素的外边距塌陷与合并现象,并提供了相应的解决方法。包括给父元素添加边框、内边距或触发BFC来避免外边距塌陷,以及通过设置独立的BFC来防止外边距合并。了解这些技巧对于优化布局和避免布局问题至关重要。
摘要由CSDN通过智能技术生成

16.1 外边距塌陷 – 父子关系的块元素

  • 如果一方有margin-top,则父子盒子一起有同样值上外边距;
  • 如果两方都有margin-top,则父子盒子取较大值的上边距;
  • 效果图如下:
    在这里插入图片描述

16.2 外边距合并 – 兄弟关系的块元素

  • 如果相邻兄弟有单独的margin-top / margin-bottom 是不会塌陷的
  • 相邻兄弟的上面一个块元素使用了margin-bottom,而下面的块元素使用margin-bottom就会发生塌陷问题:
  1. 若值相同,则其中一个margin会不起作用;
  2. 若值不同,则只有值较大的会起作用;
  • 效果图如下:
    在这里插入图片描述

16.3 解决外边距塌陷、合并的方法

1.外边距塌陷

  • 给父元素加边框 border(值可以是1px);
  • 给父元素加内边距 padding(值可以是1px,或者直接设置以达到想要 的效果);
  • 父元素触发 BFC

    float :除 none 以外的值
    positionabsolute、fixed
    displayinline-block、table-cells、flex
    overflowhidden、auto、scroll

2.外边距合并

  • 只设置其中一个值就可以了
  • 给每个要设置外边距的元素,套上一个触发 BFC 的 父元素

注:脱离标准流的元素(浮动、绝对、固定)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值