Discuz教程网

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

[复制链接]
authicon dly 发表于 2011-3-22 23:14:31 | 显示全部楼层 |阅读模式
浏览器市场的混乱,给设计师造成很大的麻烦,设计的页面兼容完这个浏览器还得兼容那个浏览器,本来ie6跟ff之间的兼容是很容易解决的。加上个ie7会麻烦点,ie8的出现就更头疼了,原来hack ie7的方法又不能用了,怎么办呢?  第一种方法:
  还好,微软提供了这样一个代码:

  1.   <meta http-equiv="x-ua-compatible" content="ie=7" />
复制代码

  把这段代码放到里面,在ie8里面的页面解析起来就跟ie7一模一样的了,所以,基本上可以无视ie8,剩下的代码只需要这样写就可以了

  1.           background:#ffc; /*  对firefox有效*/
  2.           *background:#ccc; /* 对ie7有效 */
  3.          _background:#000; /* 只对ie6有效 */
复制代码

  解释一下吧:
  firefox能解析第一段,后面的两个因为前面加了特殊符号“*”和“_”,firefox认不了,所以只认background:#ffc,看到的是黄色;
  ie7前两短都能认,以最后的为准,所以最后解析是background:#ccc,看到的是灰色;
  ie6三段都能认,而且“_”这个只有ie6能认,所以最后解析是_background:#000,看到的是黑色
  阿门!已经是最简单和最好理解的写法了,如果你是google进来的,我可以很负责任的告诉你,这种方法是ok的,我测试过。
  ie8的那段兼容7的代码我也测试过了,在我现在的windos 7 测试版所带的ie8是没问题的,以后ie8正式版出来还管不管用就不知道了。
  ps:如果你发现按我这样写还是有问题的话,请查看一下你的html头,看看之前的内容是不是这样的标准写法
  


  1. <!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">
复制代码

  
  这个是现在比较规范的写法,如果你是用dreamweaver做页面的话,默认也是这种规范的,切记,非这种规范写法的,兼容性不能保证
  第二种方法:
  要求苛刻的朋友是不愿意在页面头部增加 这样一句代码的,因为这样的结果是每个页面都得加。那么要想兼容这几个浏览器还真得想别的办法了。早些天本站发布了一篇《完美兼容ie6,ie7,ie8以及firefox的css透明滤镜》,可能当时测试的疏忽,IE8的兼容性没有解决好,好多朋友回复说用不了。今天抽出些时间,查阅大量资料,终于解决了这个问题了。
  以下是兼容IE6/IE7/IE8/FF的写法,注意下面的顺序不可颠倒

  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实现鼠标经过图片有黑白变为彩色
下一篇:PHP应用中的八种常见文件操作方式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2025-6-19 12:45

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表