常用瀏覽器CSS hack匯總表及部分示例打賞

1. 此匯總表中測試瀏覽器的版本為:
微軟系統自帶:IE6、 IE7、IE8
火狐:Firefox 3.6.6
Safari:Safari 5.0
谷歌瀏覽器:Chrome 6.0.458.1 dev
Opera瀏覽器:Opera 10.60
2. 其中,多數CSS hack是在selector{property:value;}基礎上更改的。
selector代表CSS選擇器,property代表CSS特性,value代表特性的值。

3. FF代表Firefox,Ch代表Chorme,Sa代表Safari,Op代表Opera

4. Q代表Quirks Mode,S代表Standards Mode。

5. Hack Type列的數字,指的是上面CSS hack的實現方式中的列表號。
1是指“利用瀏覽器對相同代碼的解析和支持的不同實現的hack”,2是指以Firefox或Webkit特有的擴展樣式實現的hack。

一定遵守CSS hack的三條原則。CSS hack是沒有辦法的時候才使用的解決兼容性問題的招術,是用兼容性問題去解決兼容性問題,無異于飲鴆止渴。切莫一有兼容性問題就使用,時刻記得改掉用CSS hack修補的問題。

下面列出常見幾種瀏覽器的部分css hack。
1、IE條件注釋 IE only

<!--[if lt IE 9]>Less Than IE9< ![endif]-->
<!--[if lte IE 9]>Less Than or Equal IE9< ![endif]-->
<!--[if IE]>IE only< ![endif]-->
<!--[if IE 6]>IE6 only< ![endif]-->
<!--[if IE 7]>IE7 only< ![endif]-->
<!--[if gt IE 6]> Greater Than IE6< ![endif]-->
<!--[if gte IE 6]> Greater Than or Equal IE6< ![endif]-->
...

2、CSS 選擇器(Selector)Hack

/***** Selector Hacks ******/
/* IE6 and below */
* html .setest { color: red }

/* IE7 */
*:first-child+html .setest { color: blue }

/* IE7 */
*+html .setest { color: blue }

/* IE7, FF, Saf, Opera */
html&gt;body .setest { color: green }

/* IE8, FF, Saf, Opera (Everything but IE 6,7) */
html>/**/body .setest { color: #ccc }

/* Everything but IE6-8 */
:root>.setest { color: #000 }

3、CSS 屬性(Attribute)Hack

.attest{
color: blue !ie;
/* IE6, IE7 -- acts as an !important string after ! can be anything */
color/**/: green;/* Everything but IE6 */
color:#000; /* all */
+color:blue; /* ie7 */
_color:red; /*ie6注意ie7的"+"號hack寫在前端,ietester中的ie6認識"+"*/
*color:#ccc; /* ie6-7 or #color: 777 */
color:#fafafa\9; /* all-ie */
color/*\**/: #ddd\9;/* IE7, IE8 */
color: #fefefe\0;/* IE8, IE9 */
}

Firefox CSS Hack

/* all firefox */
@-moz-document url-prefix(){
.fftest{color:red;}
}

/* Firefox only. 1+ */
.fftest, x:-moz-any-link { color: red }

/* Firefox 3.0+ */
.fftest, x:-moz-any-link, x:default { color: red }
Opera CSS Hack
/* Opera */
@media all and (-webkit-min-device-pixel-ratio:10000), 
not all and (-webkit-min-device-pixel-ratio:0){
head~body .optest { color: red }
}

Safari CSS Hack

/* Safari */
@media screen and (-webkit-min-device-pixel-ratio:0){
.satest { color: red; }
}

/* Safari 2-3 */
html[xmlns*=""] body:last-child .satest { color: red; }

/* Safari 2 - 3.1 */
html[xmlns*=""]:root #.satest { color: red; }

Chrome及其它

/* safari 3+, chrome 1+, opera9+, ff 3.5+ */
body:nth-of-type(1) .chtest { color: red }

/* safari 3+, chrome 1+, opera9+, ff 3.5+ */
body:first-of-type .chtest { color: red }

/* saf3+, chrome1+ */
@media screen and (-webkit-min-device-pixel-ratio:0) {
.chtest { color: red }
}

/* iPhone / mobile webkit */
@media screen and (max-device-width: 480px) {
.chtest{ color: red }
}
常用瀏覽器CSS hack匯總表及部分示例
文章《常用瀏覽器CSS hack匯總表及部分示例》二維碼
  • 微信打賞
  • 支付寶打賞

已有3條評論

  1. 王偉

    這個對SEO有什么影響嗎?

    2012-05-10 22:14 回復
  2. 不銹鋼水箱

    我自己剛做了個網站,現在又想再讓網絡公司幫我做一個博客,就像你一樣的。以后我會經常來光顧

    2012-05-10 21:00 回復
  3. 不亦樂乎

    這個好,純工具知識,我留下了。

    2012-05-10 10:42 回復

(必填)

(必填)

(可選)

黑龙江22选5开奖