各類各樣的瀏覽器,曾經的CSS HACK如今還能HACK嗎?css
chensy收集了網上一些常見的HACK,在各大瀏覽器上做了測試,來看看他在博客上的分享吧。html
HACK主要分爲CSS選擇器HACK、CSS屬性HACK、IE條件註釋HACK和JS判斷HACK;各有優缺點,沒必要糾結於某一方式,具體問題具體分析。這裏主要記錄的是CSS選擇器和屬性HACK。git
如下測試結果是在:Win7 64位系統,默認IE10瀏覽器,使用IE10下的IE789瀏覽器模式,使用IE6綠色版瀏覽器,使用Opera 12.15,使用Firefox 21,Safari 4,Google Chrome 28,進行測試的。若是有什麼錯誤,請指正!github
瀏覽器(加粗表示支持) | CSS hack |
---|---|
IE6 | _background-color:#38DB24; |
IE67 | *background-color:#38DB24 ; |
IE67 | +background-color:#38DB24 ; |
IE67 | #background-color:#38DB24; |
IE67 | background-color:#38DB24 !ie; |
IE678910 | background-color:#38DB24\9; |
IE78910&Firefox&Opera&Chrome&Safari | html>body .ie78910-all-hack { background-color: #38DB24 } |
IE8910&Firefox&Opera&Chrome&Safari | html>/**/body .ie8910-all-hack { background-color: #38DB24 } |
IE8910&Opera | background-color:#38DB24\0; |
IE910 | :root .ie910-hack { background-color:#38DB24\9; } |
IE910 | background-color:#38DB24\9\0; |
IE910&Firefox&Opera&Chrome&Safari | body:nth-of-type(1) .ie910-all-hack {background-color:#38DB24 ;} |
IE910&Firefox&Opera&Chrome&Safari | @media all and (min-width: 0px) { .ie910-all-2-hack{ background-color:#38DB24 ;} } |
IE910&Firefox&Opera&Chrome&Safari | @media all and (min-width: 0px) { .ie910-all-3-hack{background-color:#38DB24 ;} } |
IE910&Firefox&Opera&Chrome&Safari | :root *> .ie910-all-4-hack { background-color:#38DB24 } |
IE10 | @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .ie10-hack{background-color:#38DB24 ;} } |
Firefox | @-moz-document url-prefix() { .firefox-hack{background-color:#38DB24 ;} } |
Chrome&Safari | @media screen and (-webkit-min-device-pixel-ratio:0) {.chrome-safari-hack{background-color:#38DB24 ;} } |
via chensy's blogweb