网页制作教程:单独对IE6进行兼容


原文:Ultimate IE6 Cheatsheet: How To Fix 25+ Internet Explorer 6 Bugs
翻译:http://www.vfresh.org/w3c/727(译文对原文进行了补充)

兼容IE6的第一步就是单独对IE进行兼容,你针对IE6所写的代码只影响IE6;有几种方法可以区分开IE6:IE特有条件注释、CSS选择器、JavaScript,我们将逐一讨论。

使用IE特有条件注释

微软给IE添加了条件注释以区分不同版本,任何东西都可以塞进条件注释里:标签、JavaScript、js文件、css、内联样式。可以使用条件注释来针对某一个IE浏览器版本来编写代码。

规则如下:(译注:可参考IE 特有注释(hack))

运行代码框

[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

使用条件注释加载css的好处是这些样式是独立于其他css文件的,因此不会在编写兼容代码时弄得一团糟;而且当IE6的市场份额降低到不需要兼容时,可以快速的清理掉。

使用条件注释的唯一缺点是在IE浏览器下会增加额外的HTTP请求数,所以需要权衡是否这样做。但我不建议使用条件注释加载外部js文件,因为js文件会造成阻滞,在js未加载完之前其余文件都不会被加载;对于js请使用JavaScript程序来区分浏览器而非条件注释。

使用CSS选择器区分开IE6

如果你不打算使用条件注释,CSS选择器是另外一个区分开IE6的办法,IE6不支持子选择器;先针对IE6使用常规申明CSS选择器,然后再用子选择器针对IE7+及其他浏览器。

示例:

运行代码框

[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

这个方法的缺点是容易把样式表弄得一团糟,所以一定要写好注释说明。
在示例中,针对IE6写的样式在其他浏览器中也会执行,但(标准浏览器中)之后的子选择器覆盖了之前的申明,而IE6不支持子选择器所以忽略了它。

扩展阅读:

  • CSS Browser Compatibility Chart
  • Master Browser Compatibility Chart

使用JavaScript区分开IE6

如果你想要使用JavaScript区分开IE6,请看示例:

//原生JavaScript
if(typeof document.body.style.maxHeight === "undefined") {
    alert('IE6 Detected');
}
//MooTools(框架)
if (Browser.Engine.trident4) {
    alert('IE6 Detected');
}
//jQuery(框架)
if (($.browser.msie) && ($.browser.version == "6.0")){
    alert('IE6 Detected');
}

扩展阅读:

  • Quirksmode's Browser Object
  • MooTools' Browser Object
  • jQuery's support utility



相关阅读:
非常不错的弹出一个div的js代码
Ubuntu系统下Trac+Subversion+Apache安装
C# 生成高质量缩略图程序—终极算法
Windows Server 2008蓝牙驱动安装方法
SQL查询分析器清除被注入恶意病毒代码
Access查询之Linq to DataSet
wordpress模板常用调用函数
Asp.net控制Tomcat启动关闭的实现方法
ASP.Net生成一个简单的图片
php下清空字符串中的HTML标签的代码
CSS3属性之text-shadow详解
Mootools 1.2教程 正则表达式
ASP.net 路径问题 详解
5.3 提高ASP性能的最佳选择
快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 SQL jQuery C# C++ java Android IOS oracle MongoDB SQLite wamp 交通频道 作文范文 乡镇小型水利工程管理方面的论文 人生有六悔 创先争优报告会讲话 《萌侦探纪事》读后感 突出“四抓”实施效能问责制的调查 人事工作总结ppt汇总(9篇) 夕照作文550字 我回到了不会用火的时代 企管部年度工作计划 三篇 我是温柔小鲸鱼——长须鲸 有趣的二奶奶作文 新沙岛游玩记作文 七年级作文500字 秋游 写雨的作文600字【优秀】 部队上半年工作总结范文 一个人的大扫除 大学生入党自传1800字 一语中的 今生一路有你650字 最奢侈的厨房 小学五年级作文600字:“作业节” 给利比亚小朋友的一封信 我还能孩子多久作文200字 话说盘县与科举(赵应书) “护身蛋”的一天作文 摘小青豆作文 小火猴的日记(3)作文500字 我的好朋友--‘曹操’ 区金融办工作总结报告 成功男人面对无间道 总想抓住那道不知名的光 教师进修培训工作总结 农村妇女巾帼建功先进个人事迹材料 小学五年级作文500字:菊花 酬王二十舍人雪中见寄 爱的呼唤作文1200字 初中初一作文750字:母女情深 我读懂了你过去的一切 6·25全国土地日宣传工作总结 两个鸡蛋(张晨曦)作文350字 等你回来我们还能相爱 学校女生部工作总结 【原创诗歌】离别华丽的转身 餐厅优秀员工评语 初中初一作文700字:赛尔号 我是索拉 拥抱大海作文500字 读伯夷列传之后的感悟 “升旗手”风波 游览独山子公园作文600字 销售女神徐鹤宁经典语录分享

Copyright © 2016 phpStudy |