当前位置:首页 > WEB标准 > 正文

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

作者:××× 来源:标准之路 【 】 浏览: 添加日期:2010-03-30 我要评论(40)     

浏览器市场的混乱,给设计师造成很大的麻烦,设计的页面兼容完这个浏览器还得兼容那个浏览器,本来ie6跟ff之间的兼容是很容易解决的。加上个ie7会麻烦点,ie8的出现就更头疼了,原来hack ie7的方法又不能用了,怎么办呢?

第一种方法:

还好,微软提供了这样一个代码:

<meta http-equiv="x-ua-compatible" content="ie=7" />

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

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

解释一下吧:

firefox能解析第一段,后面的两个因为前面加了特殊符号“*”和“_”,firefox认不了,所以只认background:#ffc,看到的是黄色;

ie7前两短都能认,以最后的为准,所以最后解析是background:#ccc,看到的是灰色;

ie6三段都能认,而且“_”这个只有ie6能认,所以最后解析是_background:#000,看到的是黑色

阿门!已经是最简单和最好理解的写法了,如果你是google进来的,我可以很负责任的告诉你,这种方法是ok的,我测试过。

ie8的那段兼容7的代码我也测试过了,在我现在的windos 7 测试版所带的ie8是没问题的,以后ie8正式版出来还管不管用就不知道了。

ps:如果你发现按我这样写还是有问题的话,请查看一下你的html头,看看<head>之前的内容是不是这样的标准写法

<!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做页面的话,默认也是这种规范的,切记,非这种规范写法的,兼容性不能保证

第二种方法:

要求苛刻的朋友是不愿意在页面头部增加<meta http-equiv="x-ua-compatible" content="ie=7" />这样一句代码的,因为这样的结果是每个页面都得加。那么要想兼容这几个浏览器还真得想别的办法了。早些天本站发布了一篇《完美兼容ie6,ie7,ie8以及firefox的css透明滤镜》,可能当时测试的疏忽,IE8的兼容性没有解决好,好多朋友回复说用不了。今天抽出些时间,查阅大量资料,终于解决了这个问题了。

以下是兼容IE6/IE7/IE8/FF的写法,注意下面的顺序不可颠倒

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

下面以一个实例的形式表现,大家可以运行代码查看一下效果


标准之路www.aa25.cn 提示:可以先修改部分代码后再运行

(如果您觉得本站不错,请告诉身边的朋友,或转载到论坛、百度知道、贴吧等,记得带网址哟,不胜感激!)

〖WEB标准〗Tags: css hack 兼容 ie6 ie7 ie8 ff

所属专题:CSS HACK

把本文章添加到会员中心我的学习计划里

更多评论(40)..会员评论

522811171(219.128.*.*) 发表于:2014-01-14 10:14:21
站长,请问在哪里能学习兼容性?
smilexiaoxue(59.173.*.*) 发表于:2013-03-20 17:09:04
站长,能请教一下吗?我做了一个网站,在ie、火狐和360上浏览都是正常的,但是唯独到tt浏览器看的时候就变形了,不知道该怎么解决!
管理员回复:什么问题?
jeffrey9061(59.32.*.*) 发表于:2012-07-04 16:46:24
有一段时间没来了,第一次来的时候,还是学生,现在来,已经是毕业了,在工作了。。 不过还是喜欢这个站,遇到问题,来这里,基本能解决,呵呵,谢谢站长了,您辛苦了。。
管理员回复:不客气,也祝你工作顺利
jeffrey9061(59.32.*.*) 发表于:2012-07-04 16:46:19
有一段时间没来了,第一次来的时候,还是学生,现在来,已经是毕业了,在工作了。。 不过还是喜欢这个站,遇到问题,来这里,基本能解决,呵呵,谢谢站长了,您辛苦了。。
jeffrey9061(59.32.*.*) 发表于:2012-07-04 16:46:10
有一段时间没来了,第一次来的时候,还是学生,现在来,已经是毕业了,在工作了。。 不过还是喜欢这个站,遇到问题,来这里,基本能解决,呵呵,谢谢站长了,您辛苦了。。
ahmzj(112.65.*.*) 发表于:2011-08-15 13:13:26
站长,应该增加html5,css3新技术版块。
管理员回复:现在浏览器对新技术支持的不多,下一步会增加的
400477499(119.131.*.*) 发表于:2011-07-24 18:06:09
在做网页时用到css hack是否代表制作者水平不够呢,有人对我说,你的代码写的规范的话是不会用到css hack的,这让我很别扭。。。。。。
管理员回复:这个还是得用到,只不过写的规范的话用到的较少
itluohui(118.113.*.*) 发表于:2011-07-15 12:37:52
在火狐下为什么不能“运行代码”
管理员回复:是的

出差旅游免费预订酒店

【视频教程】新手常见问题