在當前網頁開發中,眾所周知IE6的存在導致了大部分的麻煩,常常出現樣式不兼容、布局混亂等問題。CSS3技術的出現為我們提供了更好的網頁體驗,但是由于一些不可抗因素,IE6并不支持CSS3技術,為了讓IE6用戶也能夠享受到優秀的網頁體驗,我們需要開發一套兼容IE6的CSS3代碼。
下面是一個兼容IE6 CSS3的案例:
/* 用于運行IE6的腳本 */ * html body { behavior: url(csshover.htc); } /* 普通的CSS樣式 */ .box { width: 100px; height: 100px; border: 1px solid #000; background-color: #ccc; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; } /* 用于IE6的CSS樣式 */ .box { display: inline-block; zoom: 1; *display: inline; }
在上面的代碼中,新增了一個對IE6的CSS樣式選擇器,它會對IE6進行hack,使其參照正常瀏覽器的CSS規則來顯示。具體來看,*display: inline; 起到的作用是讓IE6將.box元素識別為塊級元素,從而產生實際上的inline-block效果。而zoom: 1; 的作用是讓元素具有“有布局的”特性,從而讓IE6能夠正確地處理.margin和.padding。
通過這種方式,我們可以編寫出一套既支持現代瀏覽器,又支持IE6的CSS3樣式代碼,提供了更好的用戶體驗。讓用戶在IE6瀏覽器上也能享受到優秀的網頁體驗。