區分IE8 、IE9 的專屬css hack

通常來講,咱們寫的結構比較好的時候,IE8/9下是沒區別的.因此可能不多人關注只有IE8或只有IE9才識別的css hack.css

由於IE8及如下版本是不支持CSS3的,可是咱們若是使用css3,在IE下IE9正常渲染,但咱們又想讓IE8及如下的瀏覽器實現一樣的效果,且不但願使用css3pie或htc或條件註釋等方法時,可能就會須要用到IE8和IE9的專屬css hack了.css3

 

  1. .test{ /* 1. */
  2.         /* color:#09F\0; 之前是IE8/9, 如今10也支持 */
  3.         color:#09F\0/; /* 之前是IE8 only, 如今IE9/10也支持. 如要排除IE9須要使用下面的rule重設IE9樣式 */
  4. }
  5. @media all and (min-width:0) { /* 2. */
  6.     .test{color:red\9; }/* IE9 only, 如今IE10也支持 */
  7.     /* Ps:老外的方法都是\0,根本沒考慮Opera */
  8. }
  9. @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { /* 3. */
  10.    .test { color: green; } /* IE10+ */
  11. }
  12. :root .test { color:#963\9; } /* 之前IE9 only, 如今10也支持, 優先級高於@media, 優先級過高, 儘可能少用 */

 

注: IE老不按規矩, 之前IE8 only/IE9 only的hack, IE10 一出現都亂套了~瀏覽器

爲了不看此文的同窗失望而歸, 重新又整理了一下內容(2013-01-28), 若有錯誤望指出.spa

如今, 要想寫出專門針對ie8或ie9的hack, 把1/2/3種組合在一塊兒使用. 若是能夠, 使用CSS條件註釋更靠譜.code

此hack已經加入到我08年寫的那個用css 寫的一個瀏覽器檢測中。orm

 

來自 <http://www.fantxi.com/blog/archives/ie8-ie9-css-hack/> blog

相關文章
相關標籤/搜索