1. 程式人生 > >為什麼要浮動,什麼時候需要清除浮動,清除浮動都有哪些方法

為什麼要浮動,什麼時候需要清除浮動,清除浮動都有哪些方法

(1)為什麼需要浮動
據網上資料顯示,以前提出浮動的概念主要是為了解決左邊圖片,右邊文字的需求,後來浮動在網頁的佈局中應用比較廣泛。我之前在學習網頁設計時,針對於一個花店的導航頁,存在許多的圖片顯示,而有效並且美觀的佈局樣式極為重要,這時float屬性就顯得尤為重要。
(2)什麼時候需要清除浮動
浮動的屬性雖然方便使用,但是在使用這種屬性時,也存在著一種弊端,那就是當子元素設定了float屬性之後,且父元素的高度和寬度沒有進行設定,而是由子元素支撐起來,則會導致父元素的高度塌陷(原本的height後來被置為0)。詳情如下圖所示:
a.子元素設定float屬性之前
這裡寫圖片描述
b.子元素設定float屬性之後
這裡寫圖片描述


由上面兩圖可以看出當設定float屬性之後,父元素的高度為0,這就是所謂的高度塌陷,明顯影響了父元素的佈局。

(3)清除浮動的方式
解決這種問題的方式主要有兩種:
a.在父元素內新增冗餘元素clear:both;
具體方法是,在父元素內新增一個div,然後對這個盒子新增樣式檔案,程式碼如下:
這裡寫圖片描述

這裡寫圖片描述
Clear屬性存在的值有left,right,both,none,inherit.
如果是left,則表示在左側不允許出現浮動元素,意思就是對父元素中左邊的子元素起作用,如圖所示:

這裡寫圖片描述
如果是right,則表示父元素的右側不允許出現浮動元素,如圖所示:

這裡寫圖片描述
如果設定為both,那就整體考慮,均不可一出現浮動元素的情況。
b.在父元素中設定屬性overflow:hidden||auto