浮動布局能給我們帶來很大的方便,但有時也會造成我們不想要的後果,這個時候就要清除浮動了。
第一種情況是,有時我們不想讓浮動元素出現在不浮動元素的旁邊,這時可以對不浮動元素應用clear了,至於是用left,right,還是both,這就得看實際情況了。這種情況比較簡單,就不多加敘述了。
第二種情況是,有時我們想讓乙個父元素(父元素不設定高度)隨著裡面的內容的高度的變化而變化,如果裡面沒有浮動元素存在的話,這是完全可行的,但是如果裡面有浮動元素的話,因為浮動元素師脫離了文件流的,所以父元素會直接忽視浮動元素的存在,而只會考慮不浮動的元素,其高度也就只能適應不浮動的那些元素。比如下面:
圖一 圖二
黑色div是父元素,沒有設定高度,紅色和綠色div是其子元素,在圖一中其中紅色div沒有浮動,綠色div為左浮動,可以看到黑色div只適應了紅色div的高度。如果紅色和綠色div都不浮動的話,黑色div就能正確適應高度了(如圖二)。
這個時候我們可以在浮動的綠色div下面新增乙個
,黑色div就能正確適應高度了
除了這種新增空div的方法外,我們還可以給父元素,即黑色div新增overflow:hidden或overflow:auto屬性,但這只對ie7、ie8和ff等瀏覽器生效,在ie6下則不生效。針對ie6,我們可以顯示的給它設定乙個象徵性的高度,如height:1px,這樣ie6也能自適應高度了,
浮動 清除浮動
在css布局中分為內聯元素 display inline 和塊狀元素 display block 塊狀元素缺省會佔據一行,可設定高度寬度以及邊距,而內斂元素不會也不能設定。常見的內斂元素有 a span input select,常見的塊狀元素有 h1 h6,p,div,ul,table。浮動元素是...
CSS清除浮動 清除float浮動
css清除浮動方法集合 一般浮動是什麼情況呢?一般是乙個盒子裡使用了css float浮動屬性,導致父級物件盒子不能被撐開,這樣css float浮動就產生了。浮動產生樣式效果截圖 本來兩個黑色物件盒子是在紅色盒子內,因為對兩個黑色盒子使用了float浮動,所以兩個黑色盒子產生了浮動,導致紅色盒子不...
CSS清除浮動 清除float浮動
css清除浮動方法集合 一般浮動是什麼情況呢?一般是乙個盒子裡使用了css float浮動屬性,導致父級物件盒子不能被撐開,這樣css float浮動就產生了。浮動產生樣式效果截圖 本來兩個黑色物件盒子是在紅色盒子內,因為對兩個黑色盒子使用了float浮動,所以兩個黑色盒子產生了浮動,導致紅色盒子不...