2010-11-19 16 views
3

在开发必须支持Internet Explorer 6的站点时,您应该考虑哪些好的注意事项和指导方针?支持IE6的注意事项和指导方针

我不是在寻找现在我们都已经了解到的大量错误的解释。我需要,例如,一个人应该更喜欢某些任务元素,事情根本不工作在IE6,CSS提示等一些通用的信息

+6

停止支持IE6! – Kyle 2010-11-19 11:10:02

+3

@凯尔:我同意,我甚至赞成你的评论,但有些人没有那种奢侈。例如,OP可能正在针对停留在IE6上的公司开展工作,因为依赖于不会在其他任何项目上运行的应用程序。伤心,但是真的。 – AgentConundrum 2010-11-19 11:16:31

+1

http://www.ie6nomore.com/是一个很好的资源;) – 2010-11-19 11:21:01

回答

3

这里是我能想到的,现在的因素:受

  • 没有Alpha透明的PNG支持
  • 没有哈弗美国除了<a >标签
  • CSS花车出现行为异常。
  • 不能使用最大/最小宽度/高度。
  • 框模型冲突(填充不添加到元素的宽度)。
  • 有时会增加一倍的利润。
  • IE6不支持position:fixed。

...我开始感到沮丧,所以我会停下来。

+0

这些都是很好的提示,但它们都是简单的CSS缺点或某种错误。我想知道的是更具体的场景,例如,如果我要在页面正文的右侧创建垂直菜单,在支持IE6时标记的最佳方式是什么?像这样的东西。 – 2010-11-19 11:56:37

+0

这种场景的功能大约有四分之一到四分之一。大多数涉及我概述的六个基本问题中的至少一个。 – 2010-11-19 12:24:07

1

虽然只是说“不支持IE6!”对于那些不必处理现实的人来说听起来真的很好,很容易,但许多网络开发人员/设计人员在这个决定中完全无法控制。

有了这个说法,显然这个理想会是“不支持ie6”。

如果你必须支持它,你有多少支持它取决于你为什么必须;是因为你的网络应用程序适用于一家拥有多个IE6安装的公司,它知道它不会很快升级,或者它只是针对希望为每个可能的用户提供“支持”的客户?或者它介于两者之间?一般来说,我的目标是IE6上的“功能性,非完全丑陋,但绝对不是像素完美”的外观。我使用IETester来检查IE的所有版本(例如IE7和IE8之间的差异),所以我也包括了IE6,只是担心让它们看起来大部分功能。

对于我的客户来说,这已经足够了。有一对夫妇询问了IE6的支持情况,我已经能够向他们展示:1)互联网上仍然使用它的一般用户组是相对较小,而且2)这些用户可能在网络上的任何地方看到如此多的故障无论如何,他们可能不会再注意到它们了。我知道#2可能听起来非常不屑一顾,但我有大量的证据支持它。

基本思想归结为;你真的会花多少时间调整一个网站,使其完美适用于一个旧的,不受支持的浏览器,这种浏览器每天使用的时间越来越长,当你可以让它变得可以接受的时候,然后把剩下的时间用完到更现代的浏览器。

但是,您可以采取这种路线的程度取决于IE6支持对雇佣您的人有多重要,以及为什么这对他们很重要。

但无论如何,IETester是检验它一个明确的建议: http://www.my-debugbar.com/wiki/IETester/HomePage

1

可怜你不必支持IE6,我们都在那里我猜...

不幸的是我不能指向你一些通用的指导方针,除了KISS原则(保持简单愚蠢)。只需坚持CSS 2.1,不要使用任何奇特的新技术,如HTML5。也不要想到使用任何类型的特殊CSS选择器,如blabla > blabla

让我点你到一些网站可能帮助你在你的努力:

对于测试,我建议设置一个小型虚拟机(我建议使用Windows XP)与运行IE6。像IETester这样的测试工具可能会使用特定浏览器的引擎,但是我已经在完整的IE6和IETester工具之间存在差异 - 哦,还有即时虚拟化的Spoon.net浏览器沙箱 (他们必须删除IE,因为MS表示如此...)。

+0

+1 ie6fixer听起来很棒。 – 2010-11-19 12:34:23

+1

+1链接到Quirksmode.org - 简单地说是检查浏览器与各种功能兼容的最佳资源。 (如果你阅读图表,你会看到许多东西,IE6不支持;你会郁闷) – Spudley 2010-11-19 12:51:35

2

我很幸运,因为我不必再支持IE6。但这是最近的记忆,所以你有我的同情心。

  1. 转到Quirksmode.org。这是查找各种浏览器支持的功能的极好资源。 (看到IE6列中的所有红色都会压制你!)

  2. 如果你打算做任何脚本编程,可以使用jQuery而不是尝试使用纯Javascript:jQuery为跨浏览器做了大量工作兼容,即使在IE6中。它不是100%,但它使它变得非常好,并给你在IE6中完全不可能的功能。

  3. 下面的工具将让您的生活更轻松:

    • Dean Edwards' ie7.js - 一个JS库,旨在使符合标准IE6更兼容(他还写“ie8.js”和“ie9.js”延伸原来ie7.js增加了IE各种版本中缺少的功能)
    • Modernizr - 一个JS/CSS库,旨在帮助您解决旧版浏览器中的不兼容问题。
    • IEPNGHack - 允许您在IE6中使用带有透明度的PNG图形。
    • Whatever:Hover - 允许您使用具有任何元素类型的:hover CSS样式(对于<a>标签,IE6通常只允许:hover)。
    • CSS3Pie - 一个旨在为IE6/7/8提供一些现代CSS3功能(包括边框半径)的库。

有可能更多,但应该给你一个起点。

有一点需要向你的雇主说明,只要他们坚持使用或支持IE6,你将无法建立一个功能丰富的现代化网站。即使面对所有这些黑客行为,你能做到多少也是有限度的。再加上它会很慢:在最好的时候IE6是痛苦的缓慢,而所有这些黑客只会让它变慢。

祝你好运。

+0

+1;一些优秀的信息,比我的回答更针对具体的解决方案! – 2010-11-19 13:22:59