如何解决ie兼容性.docVIP

  • 3
  • 0
  • 约6.72千字
  • 约 8页
  • 2018-09-01 发布于湖北
  • 举报
如何解决ie兼容性

所谓的浏览器兼容性问题,是指因为不同的浏览器对同一段代码有不同的解析,造成页面显示效果不统一的情况,在大多数情况下,我们的需求是,无论用户用什么浏览器来查看我们的网站或者登陆我们的系统,都应该是统一的显示效果。随着浏览器版本的增多,解决IE浏览器兼容性显得尤为重要. 一、!important (功能有限)?? 随着IE7对!important的支持, !important 方法现在只针对IE6的兼容.(注意写法.记得该声明位置需要提前.)?? 例如: #example {?? width: 100px !important; /* IE7+FF */?? width: 200px; /* IE6 */?? } 二、CSS HACK的方法(新手可以看看,高手就当路过吧) 首先需要知道的是: 所有浏览器 通用 height: 100px;?? IE6 专用 _height: 100px;?? IE7 专用 *+height: 100px;?? IE6、IE7 共用 *height: 100px;?? IE7、FF 共用 height: 100px !important; 例如: #example { height:100px; } /* FF */ * html #example { height:200px; } /* IE6 */ *+html #example { height:300px; } /* IE7 */ 下面的这种方法比较简单 举几个例子: 1、IE6 - IE7+FF #example {?? height:100px; /* FF+IE7 */?? _height:200px; /* IE6 */?? }?? 其实这个用上面说的第一种方法也可以?? #example {?? height:100px !important; /* FF+IE7 */?? height:200px; /* IE6 */?? } 2、IE6+IE7 - FF #example {?? height:100px; /* FF */?? *height:200px; /* IE6+IE7 */?? } 3、IE6+FF - IE7 #example {?? height:100px; /* IE6+FF */?? *+height:200px; /* IE7 */?? } 4、IE6 IE7 FF 各不相同 #example {?? height:100px; /* FF */?? _height:200px; /* IE6 */?? *+height:300px; /* IE7 */?? }?? 或:?? #example {?? height:100px; /* FF */?? *height:300px; /* IE7 */?? _height:200px; /* IE6 */?? } 需要注意的是,代码的顺序一定不能颠倒了,要不又前功尽弃了。因为浏览器在解释程序的时候,如果重名的话,会用后面的覆盖前面的,就象给变量赋值一个道理,所以我们把通用的放前面,越专用的越放后面 解释一下4的代码: 读代码的时候,第一行height:100px; 大家都通用,IE6 IE7 FF 都显示100px?? 到了第二行*height:300px; FF不认识这个属性,IE6 IE7都认,所以FF还显示100px,而IE6 IE7把第一行得到的height属性给覆盖了,都显示300px?? 到了第三行_height:200px;只有IE6认识,所以IE6就又覆盖了在第二行得到的height,最终显示200px?? 这样,三个浏览器都有自己的height属性了,各玩各的去吧 这样说要是你还不明白,要么你去撞墙,要么我去!不过还是你去比较好。 ? *+html 对IE7的兼容 必须保证HTML顶部有如下声明:?? 〈!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.01 Transitional//EN /TR/html4/loose.dtd〉 三、使用IE专用的条件注释 〈!--其他浏览器 --〉 〈link rel=stylesheet type=text/css href=css.css /〉 〈!--[if IE 7]〉 〈!-- 适合于IE7 --〉 〈link rel=stylesheet type=text/css href=ie7.css /〉 〈![endif]--〉 〈!--[if lte IE 6]〉 〈!-- 适合于IE6及以下 --〉 〈link rel=stylesheet type=text/css href=ie.css /〉 〈![endif]--〉 貌似要编三套css,我还没用过,

文档评论(0)

1亿VIP精品文档

相关文档