首頁 > web前端 > css教學 > 總結解決css邊距重疊的方法

總結解決css邊距重疊的方法

巴扎黑
發布: 2017-09-07 09:12:36
原創
1491 人瀏覽過

這篇文章主要介紹了詳解css邊距重疊的幾種解決方案,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟著小編過來看看吧

今天整理了一下用css防止邊距重疊的幾種方法

#先假設一組dom結構


<p class="parent">
    <p class="child">
    </p>
</p>
登入後複製

通常情況下,如果給子元素設定margin,就會產生這個屬性對父元素也產生了同樣的效果,然而

這其實不是我們想要的結果,我們只想對子元素設定margin,那現在我們該怎麼做呢?

(1) 為父元素設定邊框


#
.parent { 
    width: 300px;       
    height: 300px;
    border: 1px solid #ccc;
}
.child {
    width: 200px;
    height: 200px;
    margin: 20px;
}
登入後複製

(2)為父元素新增padding


.parent {
    padding: 1px;
    width: 300px;
    height: 300px;
}
.child {
    width: 200px;
    height: 200px;
    margin: 20px;
}
登入後複製

(3)在子元素上方加一個有寬高的兄弟元素,記住是有寬高的。


<p class="parent">
     <p style="width: 20px;height: 20px;margin-top: "></p>
     <p class="child">
     </p>
</p>
登入後複製

(4)為父元素設定overflow: hidden; 屬性


##

.parent {
    overflow: hidden;
    width: 300px;
    height: 300px;
}
.child {
    width: 200px;
    height: 200px;
    margin: 20px;
}
登入後複製

(5)為子元素設定display: inline-block;(如果子元素是行內元素或行內區塊級元素則不會產生邊距重疊的問題)


.parent {
    width: 300px;
    height: 300px;
} 
.child {
    width: 200px;
    height: 200px;
    margin: 20px; 
    display: inline-block;
}
登入後複製

(6)使子元素脫離文檔流這個實現的方法有很多,浮動,絕對定位等,這裡我就不做具體的解釋了。

以上是總結解決css邊距重疊的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板