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