IE6/IE7/IE8/FF全面兼容的CSS HACK写法

在使用DIV+CSS网页布局中,CSS兼容性问题一直困扰着大家,在浏览器兼容性未得到解决之前,同志们仍需努力;
IE6.0与Firefox之间的兼容性解决方法比较容易,但后来出现了IE7,时隔不久微软又发布了IE8,原来IE6、IE7的hack方法又不能用了,怎么办呢?
问题既然出现了,我们就要寻找解决的方法: 本文来自网页之家www.51css.net

第一种方法: 本文来自网页之家www.51css.net

微软提供了这样一个代码: 本文来自网页之家www.51css.net

 
   
  1. <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

本文来自网页之家www.51css.net

把这段代码放到页面<head>部分内,网页在IE8里面解析方式就会跟ie7一样了,基本上可以无视ie8,剩下的只需解决IE6、IE7、Firefox之间的兼容性就可以了

_background:#000; /* 只对ie6有效 */
*background:#ccc; /* 对ie7有效 */
background:#ffc; /*  对firefox有效*/

本文来自网页之家www.51css.net

说明一下:

本文来自网页之家www.51css.net

 

ie6三段都能认,但“_”这个只有ie6能识别;

本文来自网页之家www.51css.net

 

ie7能识别“_”“*”;

本文来自网页之家www.51css.net

 

firefox对加了“_”“*”的CSS样式都不能识别; 本文来自网页之家www.51css.net

IE8对于网页头部加了那段兼容7的代码的也没,经过测试,在windos 7 测试版所带的ie8是没问题的,以后ie8正式版出来还管不管用就不知道了。 本文来自网页之家www.51css.net

提示:如果你发现还是有问题的话,请查看一下你的html页面头部,看看<head>之前的内容是不是这样的标准写法 本文来自网页之家www.51css.net

 
   
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
  3. <html xmlns="http://www.w3.org/1999/xhtml"> 
本文来自网页之家www.51css.net

这个是现在比较规范的写法,如果你是用dreamweaver做页面的话,默认也是这种规范的,切记,非这种规范写法的,兼容性不能保证 本文来自网页之家www.51css.net

第二种方法: 本文来自网页之家www.51css.net

很多朋友是不愿意在页面头部增加<meta http-equiv="x-ua-compatible" content="ie=7" />这样一句代码的,因为这样需要每个页面都得加。下面我们就介绍一种兼容IE6/IE7/IE8/FF的写法,注意下面的顺序不可颠倒:

本文来自网页之家www.51css.net

 

 
   
  1. margin-bottom:40px;       /*ff的属性*/ 
  2. margin-bottom:140px\9;    /* IE6/7/8的属性 */ 
  3. color:red\0;              /* IE8支持 */ 
  4. *margin-bottom:450px;     /*IE6/7的属性*/ 

你可能感兴趣的:(CSS hack)