美文网首页
margin塌陷

margin塌陷

作者: 元气满满321 | 来源:发表于2017-07-16 10:00 被阅读53次

margin塌陷

margin塌陷发生在下列两种情况中

1.垂直并列

/*HTML部分*/
<body>
  <div class="box1">box1</div>
  <div class="box2">box2</div>
</body>
/*CSS部分*/
<style> 
  *{
       margin: 0; 
       padding: 0; 
  }
   .box1{ 
       width: 200px; 
       height: 200px; 
       background: yellowgreen;
   } 
  .box2{ 
       width: 200px; 
       height: 200px; background: gray; 
  }
</style>

对box1我们为其设置margin-bottom:50px;对box2我们为其设置margin-top: 40px;
我们肯定会很理所当然的认定这两个盒子之间的距离为90px,事实上并非如此.如下图所示:


两盒子之间的距离仅是50px,也就是说两盒子之间的margin出现了重叠部分,故而我们可以得出:垂直之间塌陷的原则是以两盒子最大的外边距(margin)为准。

2.嵌套关系

/*CSS部分*/
<style>
.box1{
  width:400px;
  height:400px;
  background: pink;
}
.box2{
  width:200px;
  height:200px;
  background: lightblue;
}
</style>
/*HTML部分*/
<body>
  <divclass="box1">
  <divclass="box2"></div>
</div>
</body>

如图示


当为子盒子添加margin-top:10px;时会发生如下情况:


子盒子和父盒子之间并没出现期望的10px间隙而是父盒子与子盒子一起与页面顶端产生了10px间隙。

解决方法:
(1)为父盒子设置border,为外层添加border后父子盒子就不是真正意义上的贴合。
(2)为父盒子添加overflow:hidden;
(3)为父盒子设定padding值。

了解下BFC(Block Fommat Content)块级格式上下文,就能很清楚的避开这些坑
了解BFC

相关文章

  • margin塌陷

    margin塌陷 margin塌陷发生在下列两种情况中 1.垂直并列 对box1我们为其设置margin-bott...

  • 小技巧合集之css

    01 修改placeholder样式 02 margin合并/塌陷问题解决方法 具体详见:margin合并/塌陷问题

  • margin 塌陷问题

    margin 塌陷问题 在标准文档流中,块级标签之间竖直方向的margin会以大的为准,这就是margin的塌陷现...

  • margin塌陷问题

    一:什么是margin塌陷 在标准文档流中,竖直方向的margin会出现叠加现象(水平方向不会塌陷),两个marg...

  • margin塌陷问题

    今天在CSS3练习弹性盒子中想起了margin的塌陷问题。在这里回忆一下.... margin 塌陷是在父级相对于...

  • html css

    1.margin 塌陷,与margin合并 margin合并不解决,直接设置一个box的margin即可 marg...

  • margin塌陷问题及解决方法

    一:什么是margin塌陷 ?在标准文档流中,竖直方向(左右方向的不会出现塌陷现象)的margin会出现叠加现象,...

  • 【前端基础5.0】CSS-如何解决margin塌陷问题

    文/Jack同学 margin塌陷问题在布局开发的过程中也是经常遇到,原理和解决方法都不难。那margin塌陷是什...

  • css-doc

    margin塌陷BFC 这是margin塌陷的几种情况之一,另外的你可以google其他几种情况。我在这里说一种情...

  • CSS笔记

    margin叠加 盒子模型的相邻元素、父子元素的垂直方向上的margin会产生margin塌陷,具体的margin...

网友评论

      本文标题:margin塌陷

      本文链接:https://www.haomeiwen.com/subject/vgrtkxtx.html