栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > Web开发 > Html/CSS > CSS教程

CSS中如何解决外边距塌陷问题

CSS教程 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

CSS中如何解决外边距塌陷问题

首先我们先看出现外边距塌陷的三种情况:

1.当上下相邻的两个块级元素相遇,上面的元素有下边距margin-bottom,下面的元素有上边距margin-top,则它们之间的垂直距离取两个值中的较大者。


  .box1 {
     width: 150px;
     height: 100px;
     margin-bottom: 20px;
     background-color: rgb(201, 239, 98);
  }
  .box2 {
     width: 100px;
     height: 100px;
     background-color: rebeccapurple;
     margin-top: 10px;
  }

   
   

这时候两个盒子之间的垂直距离不是30px,而是20px。

解决方法:

尽量只给一个盒子添加margin值

2.对于两个嵌套关系的块元素,如果父元素没有上内边距及边框,父元素的上外边距会与子元素的上外边距发生合并,合并后的外边距为两者中的较大者。


 .box1 {
     width: 150px;
     height: 100px;
     margin-top: 20px; 
     
     background-color: red;
 }

 .box2 {
     width: 100px;
     height: 100px;
     
     background-color: rebeccapurple;
     margin-top: 10px;
 }
    



    
 
    

这时候两个盒子会发生合并,上外边距为20px。

解决办法:

①给父元素定义上边框

②给父元素定义上内边距

③给父元素添加 overflow:hidden;

④添加浮动

⑤添加绝对定位

3.如果存在一个空的块级元素,border、padding、inline content、height、min-height都不存在,那么上下边距中间将没有任何阻隔,上下外边距将会合并。

这个段落的和下面段落的距离将为20px

这个段落的和上面段落的距离将为20px

可以理解成中间div宽度为0且上下边距融合,只取margin的最大值。

到此这篇关于CSS中如何解决外边距塌陷问题的文章就介绍到这了,更多相关CSS外边距塌陷内容请搜索考高分网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持考高分网!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/214761.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号