網(wǎng)站制作NEWS
css中一個div包含一個小div,如果外層的div不設border屬性,里邊的div上部會貼住外層div,為什么
這位網(wǎng)友你好,你遇到的是Margin垂直外邊距合并問題,外邊距合并指的是,當兩個垂直外邊距相遇時,它們將形成一個外邊距。合并后的外邊距的高度等于兩個發(fā)生合并的外邊距的高度中的較大者。
垂直外邊距合并問題常見于第一個子元素的margin-top會頂開父元素與父元素相鄰元素的間距,而且只在標準瀏覽器下
(FirfFox、Chrome、Opera、Sarfi)產(chǎn)生問題,IE下反而表現(xiàn)良好。
這個問題發(fā)生的原因是根據(jù)規(guī)范,一個盒子如果沒有上補白(padding-top)和上邊框(border-top),那么這個盒子的上邊距會和其內(nèi)部文檔流中的第一個子元素的上邊距重疊。
再說了白點就是:父元素的第一個子元素的上邊距margin-top如果碰不到有效的border或者padding.就會不斷一層一層的找自己
“領導”(父元素,祖先元素)的麻煩。只要給領導設置個有效的
border或者padding就可以有效的管制這個目無領導的margin防止它越級,假傳圣旨,把自己的margin當領導的margin執(zhí)行。
對于垂直外邊距合并的解決方案上面已經(jīng)解釋了,為父元素例子中的middle元素增加一個border-top或者padding-top即可解決這個問題。
詳細介紹你可以看一下下面我上傳的文章,或者搜一下相關資料
多重隨機標簽