今天整理了一下用css防止邊距重疊的幾種方法
先假設(shè)一組dom結(jié)構(gòu)
<div class="parent"> <div class="child"> </div></div>
通常情況下,如果給子元素設(shè)置margin,就會(huì)產(chǎn)生這個(gè)屬性對(duì)父元素也產(chǎn)生了同樣的效果,然而
這其實(shí)不是我們想要的結(jié)果,我們只想對(duì)子元素設(shè)置margin,那么現(xiàn)在我們應(yīng)該怎么做呢?
(1) 給父元素設(shè)置邊框
.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)在子元素上方加一個(gè)有寬高的兄弟元素,記住是有寬高的。
<div class="parent"> <div style="width: 20px;height: 20px;margin-top: "></div> <div class="child"> </div></div>
(4)給父元素設(shè)置 overflow: hidden; 屬性
.parent { overflow: hidden; width: 300px; height: 300px;}.child { width: 200px; height: 200px; margin: 20px;}(5)給子元素設(shè)置 display: inline-block;(如果子元素是行內(nèi)元素或者行內(nèi)塊級(jí)元素則不會(huì)產(chǎn)生邊距重疊的問(wèn)題)
.parent { width: 300px; height: 300px;} .child { width: 200px; height: 200px; margin: 20px; display: inline-block;}(6)使子元素脫離文檔流這個(gè)實(shí)現(xiàn)的方法有很多,浮動(dòng),絕對(duì)定位等,這里我就不做具體的解釋了。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VeVb武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選