清除浮動之clearfix

案例:
<pre><code>
<html >
<head>
<title> css用clearfix清除浮動實例</title>
</head>
<body>
<style type="text/css">
*{margin:0;padding:0;}
.box{ background:#F00;width:510px; position:relative;}
.l{float:left; background:#333;width:200px; height:100px;}
.r{float:right;background:#666;width:200px; height:200px;}
.s{width:100px; height:100px;background:#FF0;float:left;}
</style>
<div class="box">
<div class="l">left</div>
<div class="r">right</div>
<div class="s">absolute</div>
</div>
</body>
</html>
</code></pre>
結(jié)果并非想象中的那樣,box元素高度為0,其高度并沒有讓其內(nèi)部元素撐開浪汪。

處理方案:

1抬闷、最優(yōu)浮動閉合方案:在浮動元素的父云素上添加class=”clearfix”劫流。
clearfix:after{content:".";display:block;height:0;clear:both;visibility:hidden}
clearfix{*+height:1%;}或者是clearfix{zoom:1;}//IE6&&IE7
簡單的說下.clearfix的原理:
(1)寒屯、在IE6, 7下zoom: 1會觸發(fā)hasLayout,從而使元素閉合內(nèi)部的浮動。
(2)虽另、在標準瀏覽器下,.clearfix:after這個偽類會在應用到.clearfix的元素后面插入一個clear: both的塊級元素饺谬,從而達到清除浮動的作用捂刺。

2、構(gòu)成Block Formatting Context的元素可以清除內(nèi)部元素的浮動募寨。那么只要使.clearfix形成Block Formatting Context就好了族展。構(gòu)成Block Formatting Context的方法有下面幾種:
?float的值不為none。//不適合
?overflow的值不為visible绪商。
?display的值為table-cell, table-caption, inline-block中的任何一個苛谷。
?position的值不為relative和static。//不適合

因為是應用了.clearfix和.menu的菜單極有可能是多級的格郁,overflow: hidden或overflow: auto會把下拉的菜單隱藏掉或者出滾動條腹殿,所以不適合。
而display: inline-block會產(chǎn)生多余空白例书,所以也排除掉锣尉。
display: table-cell, table-caption,為了保證兼容可以用display: table來使.clearfix形成一個Block Formatting Context决采,因為display: table會產(chǎn)生一些匿名盒子自沧,這些匿名盒子的其中一個(display值為table-cell)會形成Block Formatting Context
.clearfix {
zoom: 1;
display: table;
}

參考:閑聊CSS之關(guān)于clearfix--清除浮動

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市树瞭,隨后出現(xiàn)的幾起案子拇厢,更是在濱河造成了極大的恐慌,老刑警劉巖晒喷,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件孝偎,死亡現(xiàn)場離奇詭異,居然都是意外死亡凉敲,警方通過查閱死者的電腦和手機衣盾,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進店門寺旺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人势决,你說我怎么就攤上這事阻塑。” “怎么了果复?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵陈莽,是天一觀的道長。 經(jīng)常有香客問我据悔,道長传透,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任极颓,我火速辦了婚禮,結(jié)果婚禮上群嗤,老公的妹妹穿的比我還像新娘菠隆。我一直安慰自己,他們只是感情好狂秘,可當我...
    茶點故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布骇径。 她就那樣靜靜地躺著,像睡著了一般者春。 火紅的嫁衣襯著肌膚如雪破衔。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天钱烟,我揣著相機與錄音晰筛,去河邊找鬼。 笑死拴袭,一個胖子當著我的面吹牛读第,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播拥刻,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼怜瞒,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了般哼?” 一聲冷哼從身側(cè)響起吴汪,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蒸眠,沒想到半個月后漾橙,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡黔宛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年近刘,在試婚紗的時候發(fā)現(xiàn)自己被綠了擒贸。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,505評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡觉渴,死狀恐怖介劫,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情案淋,我是刑警寧澤座韵,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站踢京,受9級特大地震影響誉碴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜瓣距,卻給世界環(huán)境...
    茶點故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一黔帕、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧蹈丸,春花似錦成黄、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至荸百,卻和暖如春闻伶,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背够话。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工蓝翰, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人更鲁。 一個月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓霎箍,卻偏偏與公主長得像,于是被迫代替她去往敵國和親澡为。 傳聞我的和親對象是個殘疾皇子漂坏,可洞房花燭夜當晚...
    茶點故事閱讀 45,515評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽默認的外補...
    _Yfling閱讀 13,759評論 1 92
  • 這篇文章極好,以至于讓我受益良多,就一字沒有改動的轉(zhuǎn)發(fā)過來一絲冰涼老師的文章 需要注意的是媒至,display:tab...
    新晉小牛牛閱讀 1,051評論 0 2
  • 浮動元素有什么特征拒啰?對父容器驯绎、其他浮動元素、普通元素谋旦、文字分別有什么影響? 特征: 1剩失、浮動元素會脫離正常的文檔流...
    我要認真學前端閱讀 2,756評論 0 5
  • 浮動屈尼,從誕生那天起,它就是個特別的屬性——既為網(wǎng)頁布局帶來新的方法拴孤,卻又隨之產(chǎn)生一系列的問題脾歧。當然,隨著時間的推移...
    郝特么冷閱讀 844評論 0 6
  • 炎炎夏日演熟,沒有胃口鞭执,海鮮才有鮮滋味,芒粹,兄纺,那就買一點正當季的梭子蟹,明蝦化漆,花蛤估脆,用高壓鍋煮一鍋家庭簡版海鮮粥咯。...
    icakehome閱讀 1,010評論 4 17