如何处理margin中的合并和叠加现象

什么是margin合并?

在实际的网页开发中,我们经常会遇到一些不符合预期的情况,就比如两个div之间设置的margin会进行合并和叠加的现象,我们应该如何处理和防止这样的情况发生。

兄弟关系中的margin合并和叠加

两个上下div的margin中会进行一个合并,只显示最大的margin值,如下图
在这里插入图片描述
另外需要提一嘴的是,两个兄弟关系中的左右div元素设置margin,还会发生左右的margin叠加现象
在这里插入图片描述

父子关系中的margin合并

在嵌套关系中的两个块级元素中,只要给子元素中设置一个margin-top,这个时候父元素就会跟着子元素一起向下进行移动,这种现象也可以称之为margin的塌陷现象。
在这里插入图片描述

如何解决?

在兄弟关系元素中
可以使用BFC(块级格式化上下文)来进行解决,可以将两个div相互进行隔绝,形成一个独立的环境,不会相互影响。
在父子关系元素中

  1. 给父元素中设置一个border-top属性;
  2. 给父元素中设置一个padding-top属性;
  3. 给父元素中设置一个overflow属性,会触发BFC;
  4. 给父元素设置一个float,会触发BFC;
  5. 将子元素设置为行内块元素,修改形成塌陷的条件;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值