亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

margin-塌陷問題

標簽:
Html/CSS

塌陷问题

当两个盒子在垂直方向上设置margin值时,会出现一个有趣的塌陷现象。

  • 垂直并列(少见)


/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>

> 
> ![1.png](http://upload-images.jianshu.io/upload_images/5233502-1479ddcd45096868.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
> 
对box1我们为其设置margin-bottom:50px;
对box2我们为其设置margin-top: 40px;
> 
> 我们肯定会很理所当然的认定这两个盒子之间的距离为90px,事实上并非如此.
如下图所示:
> 
![1.png](http://upload-images.jianshu.io/upload_images/5233502-8c25e56688105b16.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
> 
两盒子之间的距离仅是50px,也就是说两盒子之间的margin出现了重叠部分,故而我们可以得出:**垂直之间塌陷的原则是以两盒子最大的外边距为准。**
 
* ####嵌套关系(常见)
> ```
/*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>

如图示

webp

1.png

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

webp

1.png

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

解决方法:

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



作者:饥人谷_米弥轮
链接:https://www.jianshu.com/p/c0156029891d


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消