僅針對(duì)IE8有效的CSS Hack獵奇寫法

最近做項(xiàng)目的時(shí)候,引用了 Google Font 的在線字體,估計(jì)是因?yàn)闉g覽器對(duì)字體的渲染方式不同或者是字體格式不一樣,結(jié)果導(dǎo)致 IE8 中導(dǎo)航是錯(cuò)位的,而 IE9 和 IE10 中是正常的。
那么就需要單獨(dú)為 IE8 進(jìn)行一些調(diào)整,于是就需要 IE8 的 CSS hack。一看到這里,足夠容易了吧?網(wǎng)上流傳已久的 IE8 CSS hack 就是在屬性后面加上 \9 或者 \0,代碼如下:
- color:#FFF\0; /* IE8 */
- color:#FFF\9; /* 所有IE瀏覽器(ie6+) */
加上之后,發(fā)現(xiàn) IE8 確實(shí)是沒有問題了,但是 IE9 和 IE10 卻出現(xiàn)了問題,上面的 hack 同樣對(duì) IE9 和 IE10 起作用。
好吧,這個(gè) CSS hack 不是 IE8 特有的。那怎么做才能只針對(duì) IE8 做 hack 呢?
這里的思路需要稍稍轉(zhuǎn)換一下:可以先應(yīng)用 IE8 的 hack ,與非 IE 瀏覽器分開,然后再應(yīng)用一些 CSS3 之類的 IE8 不支持的選擇器來重新覆蓋一遍,讓支持新選擇器的 IE9、IE10 正常顯示。符合條件的常用選擇器有 :root,于是就可以寫出下面代碼:
- .section-nav li a {
- display: block;
- padding: 10px 13px;
- padding: 10px 7px 10px 7px \9;
- border-right: 1px solid #d7d7d7;
- }
- :root .section-nav li a {
- padding: 10px 13px 10px 13px;
- }
這樣就做到了只對(duì) IE8 瀏覽器起作用的 CSS hack,這種方法后來搜索了一下,早就有人提到了,寫本文主要是介紹一下這個(gè)解決瀏覽器兼容性問題的思路吧。
再次感嘆,微軟神奇的IE,在開發(fā)中不得不讓人抓狂。為IE6、IE7等等,都是比較好hack的,唯獨(dú)IE8比較坑一點(diǎn)。
相關(guān)文章
- CSS3中的font-face可以將我們上傳的自定義的字體顯示出來,有時(shí)比如我們要顯示英文音標(biāo)的字體時(shí)便需要用到,本文就整理了一下使用CSS3的font-face字體嵌入樣式的方法講解,需2016-05-13
- 下面小編就為大家?guī)硪黄肅SS使footer固定在頁面底部的實(shí)例代碼。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-05-13
純CSS3實(shí)現(xiàn)的29款超全頁面加載loading動(dòng)畫庫Loaders.css特效源碼
是一段實(shí)現(xiàn)了29款常用且有意思的頁面加載loading動(dòng)畫庫效果的Loaders.css代碼,本段loading加載動(dòng)畫代碼適應(yīng)于所有網(wǎng)頁使用,有興趣的朋友們可以前來下載使用2016-05-12- 本特效代碼是一款基于使用純JavaScript和CSS3來制作炫酷桌面便簽貼紙?zhí)匦У牟寮ticker.js的特效,可以將任何塊級(jí)元素轉(zhuǎn)換為桌面便簽2016-05-12
- 這是一款基于純CSS3繪制可旋轉(zhuǎn)的太極圖形樣式效果源碼??蓪?shí)現(xiàn)太極圖形的順時(shí)針動(dòng)態(tài)旋轉(zhuǎn)效果。該源碼沒有引入任何外部圖形元素,采用純css3技術(shù)實(shí)現(xiàn)2016-05-12
一款純CSS3代碼實(shí)現(xiàn)星系軌道旋轉(zhuǎn)網(wǎng)站菜單特效源碼
一款純CSS3代碼實(shí)現(xiàn)星系軌道旋轉(zhuǎn)網(wǎng)站菜單特效源碼,其中圓球和光效是圖片,主要運(yùn)動(dòng)了css的animation,transform,transition屬性。需要的朋友前來下載源碼2016-05-12CSS3實(shí)現(xiàn)鼠標(biāo)中輪滾動(dòng)樹生長過程特效源碼
CSS3實(shí)現(xiàn)鼠標(biāo)中輪滾動(dòng)樹生長的過程特效源碼是一款基于jQuery+CSS3+HTML5實(shí)現(xiàn)的鼠標(biāo)滾動(dòng)視差效果。需要的朋友不妨前來下載源碼2016-05-12幾個(gè)CSS3的flex彈性盒模型布局的簡(jiǎn)單例子演示
這篇文章主要介紹了幾個(gè)CSS3的flex彈性盒模型布局的簡(jiǎn)單例子演示,flex布局是迄今為止最強(qiáng)大的web布局方式,需要的朋友可以參考下2016-05-12- content屬性最基本的功能是處理文本,但實(shí)際能用到content的地方卻非常多,比如圖標(biāo)和url處理,以及下面將要提到的計(jì)數(shù)器例子,接下來就總結(jié)一下CSS中的content屬性使用教程:2016-05-12
CSS3中的transform屬性進(jìn)行2D和3D變換的基本用法
這篇文章主要介紹了使用CSS3中的transform屬性進(jìn)行2D和3D變換的基本用法,文中同時(shí)介紹了使用perspective-origin定義初始位置的方法,需要的朋友可以參考下2016-05-12