我们是否应该在我们的 Web 应用程序中找到解决方法,以便它们适用于各种情况?是时候废除 IE6 编程了吗?
35 回答
这一切都是为了让您的网站在您使用越来越旧的浏览器(或禁用用户)时优雅地降级。不幸的是,有很多 IE6 和 IE7 用户或多或少无法切换,因此您的网站似乎不太可能强迫许多人这样做。如果您的网站看起来很糟糕,那没关系。如果它无法使用,那么你就有一个真正的问题。一般来说,你越是遵守当前的标准(而不是仅仅追逐最新的浏览器),你就可以更好地使用旧的浏览器而不需要额外的努力。
这在很大程度上取决于应用程序及其用户的上下文。有两个关键方面:您的用户使用什么浏览器;以及他们可以访问您的网站/与您的网站互动的重要性。
第一部分通常很容易建立,如果你有一个带有统计数据的现有版本(谷歌分析或类似的简单而伟大),或者你可以从类似的应用程序/产品中访问这些数据。
后者有点难以决定。例如,如果您正在开发一个公开可用的广告赞助网站,这只是一个数字游戏 - 计算出您失去了多少观众,并考虑到额外的开发时间的价值。但是,如果您是根据一组用户的请求专门做某事(例如企业 Web 应用程序),您可能会被这些用户浏览的内容所困扰。
根据我的经验,对于不同的应用程序,这两件事可能会发生显着变化。我们仍然有网络应用程序(上周的统计数据),IE6 使用率接近 70%(20% IE7,其余部分在 IE5.5 和 FF2 之间),而其他应用程序的 IE6 使用率接近 0%。出于相对明显的原因,后者是那种失去一些用户并不那么重要的应用程序。
说了这么多,我们通常发现支持 IE6(和其他人指出的 IE5.5)很容易,因为我们已经这样做了一段时间。是的,这很痛苦,是的,这需要更多时间,但通常不会太多。在极少数情况下,必须支持 IE6 会极大地改变您所做的开发类型 - 这只是意味着更多的工作。支持它(并对其进行测试)的另一个好处是,由于 IE6 行为的极性,您通常最终会做更好的全面浏览器和怪癖测试。
您需要根据您的应用程序/产品的要求来决定是否应该找到解决方法。那就是 IE6 并没有那么重要——这种问题在其他情况下一直发生,而 IE6 恰好是混合标准、版本控制和遗留支持的成本和影响的一个很好的例子。
这取决于您的观众,以及获得这些 IE6 观众的成本(开发、维护、开发到 7 岁最低公分母的机会成本)是否值得。
还值得一问 - IE6 用户是否可能关心或使用您的网站?我认为大量的 IE6 用户不关心新技术 (duh) 或者从限制浏览器安装的公司网络访问网络。也许那些观众不值得付出努力——只有你能回答这个问题。
我很高兴看到 Apple 的 Mobile Me 网站不支持 IE6。
对此没有硬性规定。支持 IE6 和 IE7 需要花费您可能没有的时间和知识,但另一方面,如果您希望您的网站看起来像您想要的那样,这是必须进行的投资。所以问题变成了:哪个对你更重要?
你说“如果我检查页面的统计数据,我注意到几乎一半的访问者使用这种浏览器”,这对我说,除非你对一半的访问者看到设计/布局以外的东西感到满意您打算,您将需要进行该投资或获得有能力的人的帮助。
如果这不是一个选项,您可以尝试使用一些 CSS“框架”,例如 Blueprint 或 Grid960,看看是否更容易,但这也需要一些学习。
其他选项要么采用更简单的设计,可能跨浏览器工作,删除 IE6/7 的样式表并让查看者看到原始 HTML 文档结构,要么使用基于表格的布局,如果你知道如何使用它们(与有些人会告诉您,如果这条路线最适合您的项目要求并结合您的能力和资源的限制,那么这条路线没有任何问题)。
我建议人们在做出此决定之前检查他们自己网站的用户统计信息,但这里有一个关于流行浏览器版本的常见参考:
视情况而定。像这样的网站,如果大多数人都是技术娴熟的人,我认为假设人们拥有最新的浏览器是安全的。
但是,如果您对可能不那么技术的人开放,您可能会让 IE6 大量访问您的网站。
大约一周前有人问了同样的问题,并得到了一些很好的答案。我个人最喜欢的是doekman 建议尝试 IE7-js。
遗憾的是,在大多数情况下,我们仍然需要支持 IE6,因为它仍然代表了很大一部分互联网冲浪用户。如果您在公司环境中,则更是如此,因为公司没有动力仅仅为了一些天上掉馅饼的“网络标准”而升级作品。
如果没有,请尝试使用 gmail 方法,并为 IE6 查看器抛出错误和/或显示免责声明,如果他们升级,该站点将工作/看起来更好。
不幸的是,我认为自己是一个技术含量很高的人,在家里我使用 Firefox 3 和 IE7,但在工作中(一家大型美国制药公司)我必须使用 IE6,而且我认为这不会很快改变. 该公司对基于 Web 的内部应用程序线进行了大量投资——针对另一个浏览器(甚至升级)测试和升级它们的商业案例并不引人注目。
问问你的客户:他们愿意升级到 Vista 吗?如果他们说是,那么不支持 IE6。您的目标客户是那些“哇!远景。流口水”的人。他们也是想要最快、最强大的计算机的人。
如果你的客户说“嗯?vista 是什么?我想要我的猫屏保”,那么你需要支持 IE6。
简而言之:如果他们有 Vista,那么他们就没有 IE6。具有讽刺意味的是:Web 开发人员要想最终摆脱 IE6 及其遗留问题,他们必须推广 Vista 或希望 Vista 能够成功。
我是一个为游戏部落创建免费模板的小组的程序员。我们的观点是,当 IE8 完全发布时,我们将放弃对 IE6 的支持。但归根结底,正如许多人所说,这取决于您的用户受众。我们的目标受众相对广泛(人们在我们无法预测的地方下载和使用我们的模板)——但主要是游戏玩家,他们通常足够聪明,可以让他们的软件保持最新。
我发现我的自然编码风格在我第一次尝试时通常在 IE6 中工作,而且这些错误很容易根除,所以也许我不会像其他人那样觉得它很痛苦。就我个人而言,当 IE6 生命周期结束或 IE8 完全发布时(以先到者为准),我将放弃对 IE6 的支持。
是时候废除 IE6 编程了吗?
是的。
仅仅是因为截至 2009 年 7 月,IE6 仍占网络人口的 27.21% (或 15.21%,具体取决于您的数字)。
现在我知道你们中的一些人可能会告诉我,如果越来越多的网站停止支持 IE6,浏览器最终会消失。这是一个谎言。
想象一下:
Corporation ACME 拥有超过 150 000 台运行 Windows 2000/XP 的计算机。他们还有一个 7 年前开发的不错的 Intranet 站点,它在 IE6 中运行良好,但在其他浏览器中则不然。
当他们控制了完整的 IT 基础架构以及谁获得了哪些更新时,您真的认为他们会投资修复他们的 Intranet 应用程序吗?将更新推迟到迁移到新系统之前的成本更低。
很多企业都处于这种情况。
这是另一个例子:
Business FooBar 在互联网上销售其产品。他们超过四分之一的流量来自 IE6,这也意味着他们四分之一的销售额。
您认为 FooBar 会简单地阻止这些客户,还是会用一个巨大的通知来惹恼他们,告诉他们他们正在使用有缺陷的浏览器?这将花费他们近四分之一的销售额!只要支持 IE6 具有货币价值(它确实并将直到其市场份额降至约 8% 以下),IE6 就会占上风,这也是谷歌不会很快停止对 IE6 的支持的原因。
Browse Sad等活动不了解企业文化的心态(变革代价高昂),也不了解最终消费者对全球 IT 生态系统的影响可以忽略不计。大公司控制它。
消费者确实产生了越来越大的影响,但与企业的影响相比,它仍然微不足道。
让我们在这里说实话:拥有技术专长并且可以升级到更好的浏览器的每个人都已经做到了。其余的人仍在运行过时的操作系统,不知道如何升级,或者在他们的机器上没有管理员权限。
我的猜测是,这些天大多数 IE6 用户是由于大量公司/组织陷入不合逻辑的浏览器升级恐惧。
我是美国政府的承包商,截至本文发布之时,美国政府的整个卫生与公共服务部门仍在 IE6 上进行标准化(而且似乎近期内不打算升级)。当我询问 IT 人员时,他们声称政府测试新浏览器是否符合安全标准的成本太高,但我理解真正的原因是他们害怕不得不处理跨浏览器呈现不同的事物。
是(强调)和否(怀疑)。
除非您正在为您知道 IE6 渗透率(没有双关语)很高的团队创建某种内部工具;忽略IE6。充满活力。
至于IE7,就有点折腾了。一般来说,如果你的目标是私营部门,你可以忽略它(在大多数情况下)并假设你的 IE8 支持会解决最令人发指的问题;但如果它是一个卖东西的网站(特别是网上商店;推销网站等),您可能至少要检查它是否看起来有点理智,并酌情添加一些小修复。
作为旁白; 和一个真实的例子;在我的工作地点(我们做网站),我们目前正在(或者更确切地说,考虑)总体上对 IE 支持进行转变:价格以基本的 IE8 支持为准;完整的 IE8 支持将花费约 10%;IE7 多约 30%,IE6 支持多约 100%。
编辑:可以将其视为额外收费,以制造专为 WV 设计的露营车,分别与 pinto、yugo 和马车一起工作。
在IE6下,让它至少显示一些东西。一个在 IE6 上死掉的 FF3 页面看起来很糟糕,就像你没有好好计划一样。如果您根本不支持 IE6,请确保用户知道这是故意的,通过显示一个特殊页面来建议他们去哪里。
如果您期待企业访问者,它必须在 IE6 下工作,即使只是一个简化版本。如果没有,如果您如上所述处理好,您可以完全放弃 IE6。
不过,现在还远未准备好考虑放弃 IE7。我希望这是 XP 上的默认浏览器,这是最流行的操作系统。
如果您不想花精力为您的网站支持 IE6,您可以使用以下 URL 中的任何一种方法。
这些方法建议用户下载任何高级浏览器,例如 IE7+、Firefox 3+、Safari 3+、Opera 9.5+ 或 Google Chrome
但是,那是关于 IE6 的。我相信你还是应该支持IE7。
始终牢记您的目标受众、客户需求/要求、项目目标,当然还要保持真实(根据您的预算/时间)
编写/设计一个适合大多数浏览器的网站并不是一件容易的事,你需要使用所谓的“黑客”来解决常见问题(主要是在 IE 浏览器上)这是我个人不鼓励的,但我去过那里当目标主要是IE。
现在你有几个选择,你可以选择检测它正在使用什么浏览器来浏览你的网站并触发一个脚本来推荐一个遵循更好标准的替代浏览器(有或没有显示清晰的内容),或者你可以编写一个替代的代码那些 IE 小伙子的入口页面或我更喜欢的(大部分时间)是优雅地降级页面并让用户了解他/她过时的浏览器并推荐一个选项。
我已经读到您正在使用 CMS 来创建这些网站,大多数 CMS 在大多数开箱即用的浏览器上都能“正常”工作,因为您指出某些 CSS 和 JavaScript 元素在您使用更多“前卫”技术时不起作用。
如果您打算开发更多网站,请允许我推荐以下网站:
要尝试您的网站在多个浏览器(版本、操作系统、JavaScript、Java 等)上的外观,您可以使用
http://browsershots.org/
比较您最喜欢的 CMS 选项
http://www.cmsmatrix.org/
要开始学习 (x)html、css、php 等,您可以访问
http://www.w3schools.com/
一个好的 CSS 重置样式表是 Meyer 的
http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/
我不得不说这是跨浏览器存档一致性的起点:)
我相信您可能听说过或知道这些网站,它们只是我不时使用的工具,用于寻找参考、新知识或替代品。我还可以推荐几个 FF 扩展,例如 Web Developer Toolbar 和 FireBug。
我想现在就这些了,希望对您有所帮助,并祝您编码/webdev 愉快。
问题是,如果您不愿意添加对 IE6/7 的支持,那么有很多竞争对手会很乐意“窃取”您的客户,以换取一点浏览器黑客攻击。只要有钱,对这些浏览器的支持就会非常缓慢地逐步淘汰。
您可能想看看IE7.js。
IE7.js 是一个 JavaScript 库,用于使 Microsoft Internet Explorer 的行为类似于符合标准的浏览器。它修复了许多 HTML 和 CSS 问题,并使透明 PNG 在 IE5 和 IE6 下正常工作。
他们的 IE9.js 声称:
升级 MSIE5.5-8 以兼容现代浏览器。
我自己没有用酸或其他标准测试对此进行测试,但这可能很有希望。
我完全赞成推动用户升级到最新的可用 IE 版本(因为每个版本都会改善问题),但我也反对告诉人们升级或更改他们的浏览器。
我仍然在我的网站上支持 IE6。我认为我什至支持 IE5.5。
一般来说,不要强迫您的用户升级他们的系统只是为了查看您的网站是一个很好的做法。当然,除非您正在开发内部应用程序,否则我会说每个人都应该升级到最新的可用版本。
Dean Edwards 的ie7.js使 IE6 的行为(大部分)像一个受人尊敬的 Web 浏览器。它要求客户端打开 Javascript,但这是一个合理的让步。我在我创建的网站上使用该脚本和Save the Developers中的脚本,它使支持 IE6 变得轻而易举。
如果我们可以拒绝支持非常不兼容的浏览器,那就太好了。问题是,拒绝 IE 支持会伤害您的网站,伤害您的潜在用户,但不会伤害 IE。 这正是我们的目标。我提出了一种不同的技术。如果所有反 IE 开发人员都为所有访问其网站的 IE(6) 用户设置“请停止使用您的垃圾浏览器”启动画面会怎样。他们可以提供一些好的、简单的切换理由,用户不能忽略,但随后允许用户访问(符合 IE 的)站点。这样他们就可以理解重点,而不会伤害自己(很多)或用户(除了一点点)。
这取决于您的目标受众,以及您是否认为自己有能力疏远用户。如果您正在制作一个极客网络应用程序,并且您认为大多数用户会使用 firefox,那么不要担心 IE6。我将在 Firefox、IE7 和 Safari 中启动它并查看谁访问了您的站点。如果你看到需要让它在 IE6 中运行,那么就开始着手处理它。
请注意,企业中的某些用户别无选择。因此,如果您以企业客户为目标,请注意他们仍在使用 IE6。一般来说,企业的移动速度比消费者慢。
Vista 未能获得大众接受的主要原因是我们仍然必须支持 IE6。大多数仍在使用 IE6 的人是从不升级浏览器或更新操作系统的人。如果他们中的大多数只是迁移到 Vista,IE7 将自动替换 IE6
取决于您的目标受众.. 我的意思是,有些大学有 Firefox,对吧?只有(我认为)第三世界国家默认使用 IE6。(我知道,我看到他们)不过我不知道其他国家。但我很确定仍然有很大一部分人默认使用 IE6。如果您认为这真的有必要(我认为是),请继续。我看不出有什么问题。(因为我在软件开发等方面缺乏经验……XD)
通过不阻止它并让它在大多数情况下自生自灭来支持 IE6。仅解决破坏主要功能的 IE6 错误。
至于 JS 错误和可怕的 DOM 支持,在 IE7 和 IE8 中仍然存在。在这种情况下,您不妨使用 JS 工具包并几乎免费获得 IE6 支持。
错误就是错误,它们应该被修复(在任何浏览器中)而不是被解决。但是,你必须做你必须做的事情来取悦游客。
总有一天,要解决 IE6 错误会要求太多。
我当然反对将浏览器排除在面向公众的网站之外。没有什么比访问一个网站并发现他们只支持 IE 更令人恼火的了,因为某处的某些开发人员无法让事情“工作”。
正如上面许多其他作者所指出的,有相当多的用户使用公司强加的桌面构建或安装 IE6。您最好的选择始终是识别用户并与他们交流,而不是将您严厉的概念强加给他们。
Ryan Farley最近有一篇关于此的文章,其中描述了我认为将用户转换到不同浏览器的最佳第一步。它鼓励人们升级并解释为什么在一个图形中可能无法正确渲染。许多年前,BinaryBonsai.com 是我遇到的第一个博客,它出现了一个暗示 FireFox 的徽章,我完全下载了它,只是为了不被额外的图形所困扰。
真的没有什么能比得上书呆子的同伴压力了。
如果您正在编写一个免费或向公众开放的应用程序,可能会减少对 IE6 的支持,以便有时间为您的大多数用户构建更多东西。
如果您正在编写一个不是免费的应用程序,请以您的用户为基础。很可能您会希望再为 IE6 提供一两年的全面支持。
我真的不会费心支持 IE6。它正在被逐步淘汰(并且应该由仍在使用它的任何人更新)。
我仍然会尝试支持 IE7,因为我认为它仍然有些流行。您可能总是在网站上显示“此网站在:Firefox/Chrome/Safari/IE8 中的表现要好得多”
这不是一个是或否的问题。这是您和您的客户(那些付钱给您创建网站的人)之间的谈判问题。谈判通常是这样的:您的网站将花费您 $x 并支持浏览器 a、b、c。如果您想要 IE6 支持,它将是 $x+$y 等。然后您的客户打电话来决定是否值得花费 $y 来为那些坚持使用 IE6 的客户提供服务。
如果您是自己的客户,您可以剪掉中间部分,自己打电话;-)
(IE7 相同)
地狱是的。至少在 IE6 下。支持 IE7 还不错。我从事网络开发已经有一段时间了,我所做的就是显示警告:“您使用的是过时的浏览器。此网页的某些部分可能无法正常工作,请升级或选择 Firefox”,因为您可以t 简单地忽略这些用户,你必须给他们一个选择。
我必须同意那些说“这取决于”的人。
最重要的部分是网站的受众使用什么,如果他们使用 IE6,则开发您的页面以支持 IE6。
根据我的经验,您可以期待这样的观众:
私有:IE7+ 或 FF
私有和技术 || 游戏玩家:IE8、FF、Chrome
很多人仍然使用带有 IE6/7 的 XP,除非他们是技术人员或经常使用 PC。
艺术与设计:Safari、FF(通常基于 Mac)
Mac 仍然广泛用于图形环境,几乎每个艺术家和设计师都拥有一台,即使它只是为了适应人群。
老人:IE6,很少IE7
Windows 95/98 不支持IE7。您还应该避免为这些受众使用 javascript,因为他们通常拥有糟糕的 PC。
企业:IE6/IE7
许多公司更新非常缓慢,因为它涉及大量的文书工作、组织和预算。根据公司中的哪些人可能会使用您的页面以及它是什么类型的公司,您可以预期会更糟(秘书、低工资奴隶等)或更好(首席执行官、首席技术官……)。
请注意,这不是基于任何统计数据,仅基于我的个人经验。
放弃 IE6 和 IE7 会很好,但尤其是商业网站不能失去用户。作为网站的创建者,您根本没有权力让用户切换浏览器。在某些情况下(如公司环境),甚至用户都没有权力,他们只能使用管理员允许的东西。在其他情况下,他们不知道如何安装任何东西(老人、孩子……)。
在大型全球企业环境中,我将使用 IE6 直到明年。
我打算花几百万买一些新奇的软件。必须支持IE6...