好久沒來寫東西了,今天補充下css方面。
先要理清的是為什麼要清除浮動:
[color=red]在使用float後父容器(沒有設定height情況時)並沒有包裹住這兩個層,我們只能說,父容器不知道這兩個層的高度,從而使得這兩個層溢位了父容器,脫離了文件流,這也就是我們為什麼要在浮動之後,讓父容器識別出內部元素的高度,要清除浮動的原因。[/color]
[quote]
1.浮動元素會從文件正常流中刪除,但它仍會影響布局。
2.浮動非替換元素必須為其指定width,否則元素的width會趨於0而導致浮動元素不能完整顯示。
3.一旦元素具有了浮動屬性,它便成為了乙個塊級元素。
4.浮動元素的左右外邊界不能超出包含塊的左右內邊界。
5.浮動元素永不會重疊。
6.浮動元素不會超過容器的上padding。
7.後浮動的元素永不會超過先浮動元素的頂端。
8.浮動元素會盡可能高地放置,便這個高受限於規則6和規則7。
9.浮動元素的下邊界沒有要求,因此當容器不足以容下浮動元素時,浮動元素會向下延伸。但部分瀏覽器會採取增大容器高度以容下浮動元素,而對於符合css2.1規範的瀏覽器要想讓容器容下浮動元素的乙個可行方法是:讓容器也浮動。
10.浮動元素向下延伸時,不會影響正常文字的顯示,文字會相對於浮動元素進行偏移。但部分文字背景會被浮動元素遮住。
11.如果浮動元素設定了負的外邊距、這將破壞規則4、6、7。
12.當浮動元素的width>容器的width時,這會使得浮動元素超出容器的左右邊界(超左超右依浮動方向而定)。
13.浮動重疊規則:行內框(如strong)與浮動元素重疊時,其邊框、背景、內容均位於浮動元素之上;塊框與浮動元素重疊時,其邊框、背景在浮動元素之下,而內容在浮動元素之上。
14.對某個元素應用clear:left,意味著這個元素的左邊不能有浮動元素。
15.clear不能用於非塊級元素,比如
,在大多數瀏覽器看來它是乙個非塊級元素,因此如果對br應用clear來清除浮動不會有任何效果,除非改變br的display:block。
16.如果某元素應用clear清除浮動,則此元素設定的上外邊距值會被忽略,但會有乙個重新計算的上外邊距值(甚至可能為0).如果希望此元素與浮動元素之間有乙個明確的間隔,可以在浮動元素上設定下外邊距。[/quote]
參考:[url]
前端學習 Css 浮動
塊元素在文件流中預設垂直排列,所以這個三個div自上至下依次排開,如果希望塊元素在頁面中水平排列,可以使塊元素脫離文件流。使用float來使元素浮動,從而脫離文件流 可選值 none,預設值,元素預設在文件流中排列。left,元素會立即脫離文件流,向頁面的左側浮動。right,元素會立即脫離文件流,...
前端應用 css 浮動特性
了解浮動之前得先知道什麼是文件流。文件流是指 盒子按照html標籤編寫的順序依次從上到下,從左到右,塊元素佔一行,行內元素在一行之內 從左到右依次排列,每個盒子都佔自己的位置。浮動分為兩種 乙個是左浮動 另乙個是右浮動 浮動元素 遇到 無論什麼型別元素都要停下來。浮動元素 能讓內聯元素 或者 塊元素...
前端 CSS 浮動和定位
1.標準文件流 文件流指的是元素排版布局過程中,元素會預設自動從左往右,從上往下的流式排列方式。並最終窗體自上而下分成一行行,並在每行中從左至右的順序排放元素 塊級元素 獨佔一行 h1 h6 p div 列表.行內元素 不獨佔一行 span a img strong.行內元素 可以被包含在 塊級元素...