CSS之外邊距合併

概念:

外邊距合併就是,當兩個垂直外邊距相遇時,它們將形成一個外邊框,合併後的外邊距的高度等於兩個發生合併的外邊距的高度中較大者(即絕對值大的那個數)。


具體來分,外邊距合併分爲以下4種情況:

1.當一個塊級元素出現在另一個元素的上面時,第一個元素的下邊緣和第二個元素的上邊緣會合並。如下圖:




2.當一個塊級元素嵌套另一個塊級元素時,它們的上和/或下也會合並,如下圖:




3.假設有一個空元素,它有外邊距,但是沒有邊框或填充。在這種情況下,上外邊距與下外邊距就碰到了一起,它們會發生合併,如下圖:




      4.如果這個外邊距遇到另一個元素的外邊距,它還會發生合併,如下圖:




其實,這就是爲啥一系列的段落元素佔空間很小的原因,因爲它們把所有外邊距都合併到一起了,形成一個小的外邊距。

但是有時候有些情況是不想出現的,在概念中講到取絕對值大的,但是有時候(上)邊框會合並,對於合併情況的解決辦法如下:

    !如果不需要讓垂直邊距摺疊,可以對產生摺疊效果的塊級元素加邊框、內邊距或者使用非空的內容來隔開!

加邊框:margin和border,需要計算多個值

內邊距:padding,相對簡單合理,最好的選擇

非空的內容:<m>xxx</m>,只要xxx有內容就行




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章