CSS使用float屬性設(shè)置浮動元素的實例教程

浮動的框可以向左或向右移動,直到它的外邊緣碰到包含框或另一個浮動框的邊框為止。
由于浮動框不在文檔的普通流中,所以文檔的普通流中的塊表現(xiàn)得就像浮動框不存在一樣。
float效果展示
基本設(shè)置
在網(wǎng)頁中正常添加3個div色塊:
HTML代碼:
- <div class="div1">
- div1
- </div>
- <div class="div2">
- div2
- </div>
- <div class="div3">
- div3
- </div>
簡單設(shè)置一些大小和顏色:
CSS代碼:
- .div1 {
- width: 100px;
- height: 100px;
- background-color: cyan;
- }
- .div2 {
- width: 100px;
- height: 100px;
- background-color: skyblue;
- }
- .div3 {
- width: 100px;
- height: 100px;
- background-color: green;
- }
效果如下:
正常情況下,3個div從上至下依次排序
下面,我們來使用下float屬性,并設(shè)置值right
給div1標簽添加float屬性
- .div1 {
- width: 100px;
- height: 100px;
- background-color: cyan;
- float: rightright;
- }
效果如下:
我們會發(fā)現(xiàn),div1跑到了屏幕的右側(cè),這就是讓它浮動到右側(cè)的表現(xiàn)。
同時給3個div都設(shè)置float: left
- .div1 {
- width: 100px;
- height: 100px;
- background-color: cyan;
- float: left;
- }
- .div2 {
- width: 100px;
- height: 100px;
- background-color: skyblue;
- float: left;
- }
- .div3 {
- width: 100px;
- height: 100px;
- background-color: green;
- float: left;
- }
效果如下:
當我們把3個div都設(shè)置了向左浮動之后,就可以實現(xiàn)這種橫排布局
修改CSS代碼(div1的高度和div2的寬度),如下:
- .div1 {
- width: 100px;
- height: 130px;
- background-color: cyan;
- float: left;
- }
- .div2 {
- width: 300px;
- height: 100px;
- background-color: skyblue;
- float: left;
- }
- .div3 {
- width: 100px;
- height: 100px;
- background-color: green;
- float: left;
- }
效果展示:
我們會發(fā)現(xiàn),當div2足夠?qū)?,一行?nèi)放不下div3的時候,div3會自動從第二行開始布局。但是又由于div1的高度多了一些,所以div3會從div1的后面排布,而不會從頭開始
使用 overflow 清除浮動
樣例:
- .overflow-clear-float {overflow:hidden;}
或者
- .overflow-clear-float {overflow:auto;}
overflow 樣式值為 非 visilbe 時,實際上是創(chuàng)建了 CSS 2.1 規(guī)范定義的 Block Formatting Contexts。創(chuàng)建了它的元素,會重新計算其內(nèi)部元素位置,從而獲得確切高度。這樣父容器也就包含了浮動元素高度。這個名詞過于晦澀,在 CSS 3 草案中被變更為名詞 Root Flow,顧名思義,是創(chuàng)建了一個新的根布局流,這個布局流是獨立的,不影響其外部元素的。實際上,這個特性與 早期 IE 的 hasLayout 特性十分相似。
注意兼容問題:
Block Formatting Contexts 概念是在 CSS 2.1 規(guī)范內(nèi)被提出。因此 IE6/7 中并不被支持,這是由于之前的 IE 版本僅完全實現(xiàn)了 CSS 1 規(guī)范標準,以及一部分 CSS 2.0 規(guī)范。在 IE 7 中,overflow 值為非 visible 時,可以觸發(fā) hasLayout 特性。這同樣使得 IE 7 同樣可以使容器包含浮動元素。
相關(guān)文章
- 使元素脫離文檔流,按照指定方向發(fā)生移動,遇到父級邊界或者相鄰的浮動元素停了下來。本文給大家?guī)砹薈SS清除浮動float的三種方法小結(jié),感興趣的朋友跟隨腳本之家小編一起2018-03-13
詳解css清除浮動float的七種常用方法總結(jié)和兼容性處理
這篇文章主要介紹了詳解css清除浮動float的七種常用方法總結(jié)和兼容性處理,非常具有實用價值,需要的朋友可以參考下2017-09-11- 本文詳細介紹了CSS中position定位和float浮動的相關(guān)知識,具有很好的參考價值,下面跟著小編一起來看下吧2017-02-24
- 本文針對CSS浮動float、定位position進行學習理解,通過實例幫助大家掌握CSS浮動float、定位position技巧,感興趣的小伙伴們可以參考一下2016-04-21
- 這篇文章主要介紹了css浮動(float/clear)使用方法,如果你理解CSS盒子模型,但對于浮動不理解,那么這篇文章可以幫助你2014-03-14
css浮動(float,clear)通俗講解經(jīng)驗分享
對于浮動始終非常迷惑,可能是自身理解能力差,也可能是沒能遇到一篇通俗的教程,前兩天終于搞懂了浮動的基本原理,迫不及待的分享給大家,感興趣的朋友可以參考下哈,希望2013-03-28- 這篇文章主要介紹了html/css中float浮動的用法實例詳解,需要的朋友可以參考下2019-09-10