DIV+CSS浏览器兼容问题一直困绕着许多从事DIV+CSS网页排版的美工人员,尤其是IE与火狐的兼容。用DIV+CSS布局的网页在IE下显示一切正常,可是在火狐(FireFox)浏览器里打开,本来好好网页一下子就全乱了,这一定会影响到你的网站的推广,seo优化,不利于搜所引擎的搜索,所以解决DIV+CSS浏览器兼容的问题是完全必须的。

  下面来看一下DIV+CSS浏览器兼容的实例,区分IE6,IE7,firefox火狐浏览器CSS的写法:

  先来分开区分一下。

  ◆首先声明DIV+CSS浏览器兼容性IE6与IE7与火狐(firefox)的一些识别规则:

  1.IE都能识别*;标准浏览器(如FF)不能识别*;

  2.IE6能识别*,但不能识别!important,

  3.IE7能识别*,也能识别!important;

  4.firefox不能识别*,但能识别!important;

  ◆请看下简单的DIV+CSS浏览器兼容实例:

1.IE6和firefox的区别:


以下是代码片段:
background:orange; *blue;< /span>


  意思就是火狐浏览器的背景颜色是橙色,而IE浏览器的背景色是蓝色.

2.IE6和IE7的区别:


以下是代码片段:
background:green!important; blue;< /span>


  意思指的是:IE7的背景颜色是绿色,IE6的背景颜色是蓝色

3.区别IE7与FF:


以下是代码片段:
background:orange; *background:green;


  意思指的是:火狐浏览器的背景颜色是橙色,而IE7的背景颜色是绿色

4.FF,IE7,IE6:


以下是代码片段:
background:orange; *background:green!important; *blue;< /span>


  意思是火狐浏览器的的背景橙色,IE7浏览器的背景颜色是绿色,而IE6浏览器的颜色是蓝色.

  为了更加清楚的来表达说明DIV+CSS浏览器兼容下面表格是更加清楚的能表达IE6,IE7,FF之间的识别标识区别:

                    IE6          IE7          FF

          *          √           √           ×

      important      ×           √           √


只针对ie6,ie7和firefox的csshack

注意都要写在正常样式的后边,除!important方法在前边

---------------针对样式名------------

如果只让ie6看见用*html .head{color:#000;}
如果只让ie7看见用*+html .head{color:#000;} *:first-child+html .head{color:#000;}

如果只让ff看见用:root body .head{color:#000;}
如果只让ff、IE8看见用html>body .head{color:#000;}


如果只是不让ie6看见用html>body .head{color:#000;} 即对IE 6无效
如果只是不让ff、IE8看见用*body .head{color:#000;}    即对ff、IE8无效

body>.head{color:#000}      IE7 8 ff 有效



-------------针对具体属性--------------



如果只让ie6看见用_     .head{_color:#000;}
如果只让ie7看见用+与_结合的方法:     .head{+color:#f00;!;_color:#000;}


如果只是不让ie6看见用    .head{color :#000;}注意有空格,或者用!important,写法: width:20px!important; width:50px;

如果只对ff无效/9   >.head{color:#000\9}

--------------------------------------------------IE8正式版hack---------------------------------



"\9" 例:"margin:0px auto\9;".这里的"\9"可以区别所有IE和FireFox.
"*" IE6、IE7可以识别.IE8、FireFox不能.
"_" IE6可以识别"_",IE7、IE8、FireFox不能.


如:.a {color:#f00;     color:#f60\9;    +color:#00FF00;    _color:#0000FF; }
         all               IE8                 IE7                IE6