CSS hack:區分IE6,IE7,IE8,firefox

來源:互聯網
上載者:User

區別不同瀏覽器,CSS hack寫法,從網上看到很多文章,現總結一下,盡量全面一點,備查。
注意下面介紹的這些hack寫法僅適用於XHTML1.0。如果沒有在HTML最前加上<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">

那麼效果將不一樣!此外,這裡所說的IE8,不是指IE8的相容模式,因為IE8的相容模式其實就是IE7。

區別IE6、7與FF/IE8:
       background:blue;*background:orange;

引用顯示效果:
IE 6/7:orange
FF/IE8:blue
原理:FF/IE8不支援*開頭,而IE6/7都支援。

區別IE6與IE7/IE8/FF:
       background:green;_background:blue;

引用顯示效果:
IE7/8/FF:green
IE6:blue
原理:IE6支援底線"_",IE7、8和firefox均不支援底線。

區別FF/IE8和IE6/7:
background:orange;+background:green;-background:blue;
或者
background:orange;*background:green!important;*background:blue;

引用顯示效果:
IE6:blue
IE7:green
FF/IE8:orange
原理:IE6能識別-,IE7能識別+,IE8和FF都不能識別+和-
IE8/FF都不識別*,IE7優先識別!important,IE6不能識別!important。

關於IE8的hacks:
.test{
    color:/*\**/#00f\9; /* IE8 only */
    color:#00f\9; /* 適用於所有IE版本 */
}

可同時區分IE8、IE7、IE6、Firefox的CSS hacks:
.test{
    color:#000; /* Firefox */
    color:/*\**/#00f\9; /* IE8 */
    *color:#f00; /* IE7 */
    _color:#0f0; /* IE6 */
}

Ie6 支援(_)    _color:red;

ie7 支援(+)   +color:blue;

ie8 支援(/*\**/....\9)   /*\**/color:black\9;

 

ie6支援 _                    ie7 ie8不支援_

_color:red;                color:blue;

ie6  ie7  *                  ie8不支援*
*color:red;                color:blue;

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.