DIV+CSS 清除浮動(dòng)常用方法總結(jié)

DIV+CSS 清除浮動(dòng)是頁面布局中常見的問題,相信各位高手也都有自己的方法,今天在這里對常見的幾種方法進(jìn)行總結(jié)(PS:談不上是原創(chuàng),這里是我自己做的歸納總結(jié),也是我自己內(nèi)化的過程),希望對您能夠有所幫助。
DIV+CSS 浮動(dòng)效果是指,父元素在未定義高的情況下,由于子元素全部浮動(dòng)脫離文本流,而造成父元素高的塌陷(PS:正常情況下,父元素的高是由子元素?fù)纹饋恚?;或者因?yàn)椴糠肿釉氐亩?dòng),脫離文本流而造成其他元素的布局錯(cuò)亂的情況。
DIV+CSS 清除浮動(dòng) 常見的方法如下:
1、給未加浮動(dòng)的子元素的CSS添加 clear: both;若子元素都有浮動(dòng)時(shí),可以新增加一個(gè)空的子元素,并且給其的CSS添加 clear: both;這樣可以利用清除左右浮動(dòng)的子元素重新?lián)纹鸶冈氐母?,從而達(dá)到清除浮動(dòng)的效果。代碼及效果如下:
- <style type="text/css">
- .fl{float:left;}
- .demo{background:#ccc;}
- .item1{background:#F571E3;height:100px;width:100px;}
- .item2{background:#21B2F7;height:200px;width:100px;clear: both;}
- </style>
- </head>
- <body>
- <h2>用 clearfix 清除浮動(dòng)</h2>
- <div class="demo">
- <div class="fl item1"></div>
- <div class="item2"></div>
- </div>
- </body>
清除浮動(dòng)前,item1左浮動(dòng)的效果(此時(shí)父元素的高是被未浮動(dòng)的item2元素的高撐開):
清除浮動(dòng)前,item1右浮動(dòng)的效果(此時(shí)父元素的高是被未浮動(dòng)的item2元素的高撐開):
清除浮動(dòng)后的效果(因?yàn)镈IV是塊級元素,會(huì)獨(dú)占一行,所以item2會(huì)在下面一行,此時(shí)父元素的高是被item1元素和item2元素的高撐開):
2、子元素全部浮動(dòng)時(shí),給父元素的CSS添加 overflow: hidden;(子元素沒有全部浮動(dòng)時(shí),不浮動(dòng)的元素會(huì)撐開父元素的高,但是由于浮動(dòng)元素造成的布局應(yīng)該再利用padding進(jìn)行修改),但是此方法父元素不能改使用position進(jìn)行定位,否則不起作用。代碼及效果如下:
- <style type="text/css">
- .fl{float:left;}
- .demo{background:#ccc;overflow: hidden;}
- .item1{background:#F571E3;height:100px;width:100px;}
- .item2{background:#21B2F7;height:200px;width:100px;}
- </style>
- </head>
- <body>
- <div class="demo">
- <div class="fl item1"></div>
- <div class="fl item2"></div>
- </div>
- </body>
清除浮動(dòng)前的效果,由于父元素的高塌陷,所以背景 background:#ccc; 沒有起效果:
清除浮動(dòng)后的效果:
3、給父元素加 偽類:after 和 zoom,代碼及效果如下:
- <style type="text/css">
- .fl{float:left;}
- .demo{background:#ccc;zoom: 1;}
- .demo:after{display:block;clear:both;content:"";visibility:hidden;height:0}
- .item1{background:#F571E3;height:100px;width:100px;}
- .item2{background:#21B2F7;height:200px;width:100px;}
- </style>
- </head>
- <body>
- <div class="demo">
- <div class="fl item1"></div>
- <div class="fl item2"></div>
- </div>
- </body>
清除浮動(dòng)前的效果,由于父元素的高塌陷,所以背景 background:#ccc; 沒有起效果:
清除浮動(dòng)后的效果:
4、如果是在使用bootstrapt,則可以給其父元素添加class 為 clearfix 的類,代碼及效果如下:
- <style type="text/css">
- .fl{float:left;}
- .demo{background:#ccc;}
- .item1{background:#F571E3;height:100px;width:100px;}
- .item2{background:#21B2F7;height:200px;width:100px;}
- </style>
- </head>
- <body>
- <div class="demo clearfix">
- <div class="fl item1"></div>
- <div class="fl item2"></div>
- </div>
- </body>
清除浮動(dòng)后的效果:
以上方法各有利弊,大家可以根據(jù)自己的理解選擇使用,還有一些其他的清除浮動(dòng)的方法,例如讓父元素浮動(dòng)、讓父元素 display:table 等等其他,個(gè)人并不推薦使用。
以上這篇DIV+CSS 清除浮動(dòng)常用方法總結(jié)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
原文地址:http://www.cnblogs.com/Lily-nercel/archive/2016/05/06/5465592.html
相關(guān)文章
- 這篇文章主要介紹了清除css浮動(dòng)的三種方法小結(jié),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-01-19
詳解css清除浮動(dòng)float的七種常用方法總結(jié)和兼容性處理
這篇文章主要介紹了詳解css清除浮動(dòng)float的七種常用方法總結(jié)和兼容性處理,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2017-09-11淺談css中浮動(dòng)和清除浮動(dòng)帶來的影響
這篇文章主要介紹了淺談css中浮動(dòng)和清除浮動(dòng)帶來的影響,通過代碼示例和圖片展示詳細(xì)介紹講解了浮動(dòng)的應(yīng)用和實(shí)現(xiàn)效果,需要的朋友可以參考下2017-08-14- 本文主要介紹了CSS解決浮動(dòng),清除浮動(dòng)的幾種方法:1、設(shè)置父元素高度;2、overflow;3、增加子元素(塊級),并且設(shè)置其clear屬性值為both來解決(隔墻法、內(nèi)墻法);4、使2017-03-22
詳解CSS中zoom屬性或overflow:auto屬性清除浮動(dòng)的作用
這篇文章主要為大家介紹了CSS中zoom屬性或overflow:auto屬性清除浮動(dòng)的作用,文中通過實(shí)例代碼介紹的很詳細(xì),相信會(huì)對大家的理解和學(xué)習(xí)具有一定的參考借鑒價(jià)值,有需要的朋2016-11-26關(guān)于清除浮動(dòng)塌陷的幾種方法總結(jié)
在大家在使用css的過程中,多多少少會(huì)遇到清除浮動(dòng)這個(gè)問題。所以這篇文章給大家總結(jié)了div+css中關(guān)于清除浮動(dòng)塌陷的4種方法,相信會(huì)對大家學(xué)習(xí)或者使用div+css能有所幫助,2016-10-17- 下面小編就為大家?guī)硪黄獪\談CSS中的clear清除浮動(dòng)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-06-06
- 這篇文章主要介紹了CSS清除浮動(dòng)的方法詳解,值得注意的是并不是每次單純把浮動(dòng)清除掉就可以解決相關(guān)問題,文中最后談到的閉合浮動(dòng)的方案也非常值得一試,需要的朋友可以參考下2016-05-30
CSS浮動(dòng)所產(chǎn)生的內(nèi)容溢出問題及清除浮動(dòng)的方法小結(jié)
CSS的float浮動(dòng)效果在一些情況下非常不穩(wěn)定,控制不好的時(shí)候一般還是清除浮動(dòng)為妙,這里我們就來看一下CSS浮動(dòng)所差生的內(nèi)容溢出問題及清除浮動(dòng)的方法小結(jié)2016-05-30Css實(shí)現(xiàn)清除浮動(dòng)的方法匯總
這篇文章主要介紹了Css實(shí)現(xiàn)清除浮動(dòng)的方法匯總,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-07-11