margin-top失效常見癥狀及解決方法
本文向大家描述一下margin-top失效的解決方法,margin-top失效常出現(xiàn)兩種情況來介紹,這里來和大家分享一下,希望本文的介紹一定會讓你有所收獲。
關(guān)于margin-top失效的解決方法
常出現(xiàn)兩種情況:
(一)margin-top失效
先看下面代碼:
- <div>
- <divclassdivclass="box1">float:left</div>
- <divclassdivclass="box2">clear:both;margin-top:20px;</div>
- </div>
兩個層box1和box2,box1具有浮動屬性,box2沒有,這時候設(shè)置box2的上邊距margin-top沒有效果。
網(wǎng)上能找到的兩種比較靠譜的解釋:
1:“在CSS2.1中,水平的margin不會被折疊;垂直margin可能在一些盒模型中被折疊…”
2:當***個層浮動,而第二個沒浮動層的margin會被壓縮,詳見--浮動元素后非浮動元素的margin的處理。
得到解決問題思路:要浮動一起浮動,要就一起不浮動。
◆解決辦法:
1.box2增加float屬性
2.box1與box2之間增加一層"<divstyle="clear:both;"></div>"
(二)子元素設(shè)置margin-top作用于父容器
- <divclassdivclass="box"style="height:100px;background:red;">
- <divclassdivclass="box2">clear:both;
- margin-top:20px;height:50px;width:500px;
- background:#000;</div>
- </div>
當給box2設(shè)置margin-top時,在FF下僅作用于父容器。
◆解決辦法:
1.給父容器box加overflow:hidden;屬性
2.父容器box加border除none以外的屬性
3.用父容器box的padding-top代替margin-top
【編輯推薦】
- Firefox下margin-top失效解決技巧
- 十大CSS使用經(jīng)典技巧
- CSS屬性font-size用法詳解
- 探究采用DIV+CSS框架的利與弊
- DIV CSS網(wǎng)頁布局需要掌握的八大技巧