大家是如何处理IE6兼容性的?

用其他浏览器开发完之后再针对ie6做一次修改? 还是一边开发一边测试ie6?

阅读 11.7k
9 个回答

IE6我倾向于用温和的态度对付。用最小的精力,对IE6做最低限度的容忍。

  1. 肯定做完再改。
  2. 只维持IE6下最低程度的“正确”:不丢字、排版不出大的错位、重要功能不丢失。
  3. 不追求样式一致。小的尺寸错误不管,样式不好IE6兼容的就退化处理。
  4. 响应式也牺牲掉,IE6下只保证浏览器宽度够宽的时候说得过去就行。甚至可以把响应式的布局,IE6下通通退化成传统的px定宽布局。
  5. 主要使用IE6条件注释和hack。hack手段主要是双下划线。
  6. 表态抵制IE6并教育用户升级。我选择在网页页脚区的上边,插入一段黄底红字的提示。这样不影响网页正文区,又不妨害自己表态。
  7. 如果像sf一样,受众比较“高科技”,不应该再用IE6来访问,则以上的IE6兼容都不做,并在网页的第一屏幕就提示。这里的提示不要吝惜嘲讽性的语言。例如:“如果您不是程序员中的垃圾货色,就不应该再使用IE6上网。如果您在公共场合,请用以下链接下载一个便携版浏览器(解压即用):Firefox, Chrome”。
  8. js方面,如果要IE6兼容,基本靠使用jQuery 1.x解决,简单省事。

全部写完之后 测试ie6 ...

或者 不理会 ie6 ...

因为开发精力有限, 所以现在我在自己的项目中一般这么做, 针对所有 oldIE (IE <= 8) 的话只要把版本判断改掉就行了

用条件注释包住项目的样式和脚本

<!--[if !(lt IE 7)]><!--> ... <!--<![endif]-->

用条件注释美化内容, 假设网页的主体全部包在一个 #wrap

<!--[if lt IE 7]>
<style>
  #wrap { display:none!nimei }
</style>
<![endif]-->

body 最后用条件注释为 oldIE 添加独特的内容展示

<!--[if lt IE 7]>
  <style> /* some IE6 styles */ </style>
  <div id="oldie-die">
    ... 总之就是给一些浏览器的下载链接, 还打算支持 IE8 的话也给个链接
  </div>
<![endif]-->

想办法让你的网站目标用户群平滑迁移走然后合并上述代码分支

比如我搭了自己学院的新网站, 一些老师用 IE6 无法正常浏览, 我就花了半个下午帮他们换了 IE8 (忍着不吐槽办公机的 xp...), 任务完成. 确认基本功能可用之后我就 merge 了上述的支持代码.

最后...

(可选) 不时 grep 服务器访问日志并嘲笑 MSIE 6.0 的条目. 我见到过一个 IP 用 IE6 从百度搜索结果赶来访问了一篇文章, 大概 1 分钟过后回来看了同一篇文章, 但这回用上了一个火狐! 虽然版本在当时也不是很新就是了...

其他浏览器开发完之后再针对ie6做一次修改

或者上线了,有问题了再调试IE6

开发的时候是用chrome,所以所做的开发基本上是在chrome下没问题,在去ie6下面做兼容。

兼容采用的是优雅降级。

保证ie6下功能完整,可用,降低了样式的效果。

为互联网进步做点贡献吧,提示用户升级浏览器,别再迁就ie6了...

我在集团开发的系统中不再考虑IE6了
对外的客户已经在试着不让使用IE6

新手上路,请多包涵

基本不考虑ie6了,等有问题再去兼容ie6

不理IE6了。。

推荐问题
宣传栏