css的三種定位機制: 文件流,浮動,定位
html,相當重要的概念,在網頁中,標籤從上至下,從左至右,。比方塊級元素,行內元素的預設排序我們稱之為普通流。這種布局方式稱之為普通流布局
浮動最早是用來控制,以便達到其他元素(特別是文字)實現「環繞」的效果。
後來,發現浮動可以讓任何盒子同一行顯示,漸漸偏離主題,只有就一直用浮動進行布局
元素的浮動是指設定了浮動屬性的元素會脫離標準普通流的控制,移動到其父元素中指定位置的過程。
浮動的特性
1.蓋不住的文字
2.浮動元素後面不是塊級元素,後面的元素將會和它併排(除非設定了元素的寬度,並且螢幕放不下時將會換行)
3.浮動元素的上乙個元素如果沒有浮動,浮動只在當前行浮動;當浮動遇到浮動,它們將在一行排序,除非沒有位置了
4.當元素設定定位值為absolute、fixed時,浮動將被忽略
5.float引起父元素高度塌陷
6.浮動元素會被後乙個元素的margin-top影響
**1.額外標籤法**
在浮動的元素後面加乙個**空的div** 新增屬性 clear: both;
**2.偽元素清除浮動**
給要清除的浮動物件的父元素新增乙個偽元素,content內容為".",設定可見性visibility為hidden,高度設定為0,樣式改為塊級元素,清除浮動
.clearfix:after
.clearfix
3.雙偽元素清除浮動
給要清除的浮動的父元素新增兩個偽元素,內容為「.」,樣式為block,然後清除偽元素的浮動 clear:both
.clearfix:before, .clearfix:after
.clearfix:after
.clearfix
4.給父元素新增overflow
清除浮動的4種方式
清除浮動主要是為了解決,父元素因為子級元素浮動引起的內部高度為0的問題 如下 給父盒子設定乙個boder,內部放兩個盒子乙個big 乙個small,未給big和small設定浮動,則他們會預設撐開父盒子。當我給內部兩個盒子加上float屬性的時候 底部的footer盒子就會頂上來,然後父盒子因為沒設...
css 清除浮動的4種方式
浮動布局和定位布局為css中布局的常用的兩種布局方式,而且相容性會比較好。隨著flex的流行,以後會是主流,新的東西好用,相容不太好。ie10以下不相容flex布局。float布局會脫離文件流,對頁面的布局造成影響,比如造成父級的高度坍塌等問題。清除浮動後,便不會影響文件流。下面介紹一下現在清除浮動...
清除浮動的八種方式
1,在同級浮動元素的背後加乙個空的div,設定屬性clear both 2 給父元素加高度,解決了父級div無法自動獲得高度的問題,但是這種限制了相容性的問題,而且子元素高度必須和父元素一樣,不然會出錯 3,overflow hiddent 瀏覽器會自動檢查浮動區域的高度 4,父級div定義 偽類 ...