起源:
| 以下為引用的內(nèi)容: .clearfix:after { |
說明:
*對大多數(shù)符合標(biāo)準(zhǔn)的瀏覽器應(yīng)用第一個聲明塊,目的是創(chuàng)建一個隱形的
內(nèi)容為空的塊來為目標(biāo)元素清除浮動。
*第二條為clearfix應(yīng)用 inline-table 顯示屬性,僅僅針對IE/Mac。
*利用 * / 對 IE/Mac 隱藏一些規(guī)則:
* height:1% 用來觸發(fā) IE6 下的haslayout。
*重新對 IE/Mac 外的IE應(yīng)用 block 顯示屬性。
*最后一行用于結(jié)束針對 IE/Mac 的hack。
由于此方法針對的瀏覽器或成為歷史(尤其是Mac下的IE5 ),或正在靠近標(biāo)準(zhǔn)的路上,這個方法就不再那么與時俱進(jìn)了。
拋掉對 IE/Mac 的支持之后,新的清除浮動方法:
| 以下為引用的內(nèi)容: /* new clearfix */ |
說明:
IE6 和 IE7 都不支持 :after 這個偽類,因此需要后面兩條來觸發(fā)IE6/7的haslayout,以清除浮動。幸運的是IE8支持 :after 偽類。因此只需要針對IE6/7的hack了。