84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
CSS2 盒子模型告訴我們相鄰的垂直邊距會折疊。
我覺得這很煩人,因為它是許多設計錯誤的根源。我希望透過了解折疊邊距的目的,我將了解何時使用它們以及如何在不需要時避免它們。
此功能的目的是什麼?
“margin”的一般含義不是傳達“將其移動 10px”,而是“該元素旁邊必須有 10px 的空白空間。”
我一直發現這是最容易用段落來概念化的。
如果您只為段落指定 margin-top: 10px 並且在任何其他元素上沒有邊距,則一系列段落的間距將會很漂亮。但是,當然,當您將另一個元素放置在段落下方時,您會遇到麻煩。兩人會碰觸。
margin-top: 10px
如果邊距沒有折疊,您會猶豫是否將margin-bottom: 10px 添加到先前的程式碼中,因為這樣任何一對段落都會間隔20px,而段落將與其他元素僅10px 。
margin-bottom: 10px
所以垂直邊距會塌陷。透過添加 10 像素的頂部和底部邊距,您會說:「我不關心其他元素的邊距規則。我要求每個段落的上方和下方至少有 10 像素的內邊距。」
“margin”的一般含義不是傳達“將其移動 10px”,而是“該元素旁邊必須有 10px 的空白空間。”
我一直發現這是最容易用段落來概念化的。
如果您只為段落指定
margin-top: 10px
並且在任何其他元素上沒有邊距,則一系列段落的間距將會很漂亮。但是,當然,當您將另一個元素放置在段落下方時,您會遇到麻煩。兩人會碰觸。如果邊距沒有折疊,您會猶豫是否將
margin-bottom: 10px
添加到先前的程式碼中,因為這樣任何一對段落都會間隔20px,而段落將與其他元素僅10px 。所以垂直邊距會塌陷。透過添加 10 像素的頂部和底部邊距,您會說:「我不關心其他元素的邊距規則。我要求每個段落的上方和下方至少有 10 像素的內邊距。」