日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

margin塌陷

發(fā)布時間:2023/12/10 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 margin塌陷 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一:什么是margin塌陷

在標準文檔流中,豎直方向的margin會出現(xiàn)疊加現(xiàn)象(水平方向不會塌陷),兩個margin緊挨著,中間沒有border或者padding
margin直接接觸,就產(chǎn)生了合并
表現(xiàn)為較大的margin會覆蓋掉較小的margin,豎直方向的兩個盒子中間只有一個較大的margin,這就是margin塌陷現(xiàn)象

二:margin塌陷的分類

1、兄弟關(guān)系的盒子
2、父子關(guān)系的盒子


兄弟并列

1 <style> 2 *{ 3 margin:0; 4 padding:0; 5 } 6 .box1{ 7 width:200px; 8 height:200px; 9 background: yellowgreen; 10 margin-bottom: 50px; 11 } 12 .box2{ 13 width:200px; 14 height:200px; 15 background: gray; 16 margin-top: 40px; 17 } 18 </style> 對box1我們?yōu)槠湓O(shè)置margin-bottom:50px; 對box2我們?yōu)槠湓O(shè)置margin-top: 40px;

如下圖所示:

?

兩盒子之間的距離僅是50px,也就是說兩盒子之間的margin出現(xiàn)了重疊部分,故而我們可以得出:垂直之間塌陷的原則是以兩盒子最大的外邊距為準。

?

父子關(guān)系

1 /*CSS部分*/ 2 <style> 3 .box1{ 4 width:400px; 5 height:400px; 6 background: pink; 7 } 8 .box2{ 9 width:200px; 10 height:200px; 11 background: lightblue;
    margin-top:10px
12 } 13 </style> 14 /*HTML部分*/ 15 <body> 16 <divclass="box1"> 17 <divclass="box2"></div> 18 </div> 19 </body>

當為子盒子添加margin-top:10px;時會發(fā)生如下情況:

子盒子和父盒子之間并沒出現(xiàn)期望的10px間隙而是父盒子與子盒子一起與頁面頂端產(chǎn)生了10px間隙。

?

解決方法:

?

1.給父元素增加邊框

為了不影響原先的圖像效果,可以將邊框顏色設(shè)置為白色(與瀏覽器背景顏色一致)。

2.溢出隱藏

在父元素的style里面添加overflow:hidden;

3.利用浮動

給父元素的style添加浮動,但是這種方法不推薦使用。因為會帶來未知的錯誤。

4.給父元素添加position:fixed;

這里用到了定位的知識,將父元素顯示在固定位置,就不會受margin-top塌陷的問題影。

5.使用偽元素

1 .clearfix::before{ 2 content: ”“”; 3 display: table; 4 }

?

轉(zhuǎn)載于:https://www.cnblogs.com/cz976230/p/10654402.html

總結(jié)

以上是生活随笔為你收集整理的margin塌陷的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。