编辑:正如@Graham Ritchie有用地指出的那样,我的问题本来可以说得更好一些:如果我想编写一个可以被实际上仍在使用的设备正确解析的网页,应该使用哪种语法和功能? ?
[屏幕阅读器,销售点/信息亭设备,智能电视或控制台之类的Internet设备。所以,我最近被分配去开发HTML登陆页面,该页面需要支持-听我说-古老的
Microsoft Internet Explorer 6。是的,您没看错。
长话短说,这是一个长期处于法律困境中的公共管理项目的要求,而重新制定这些要求比制定和完成这些要求更成问题。至少根据我的老板。此外,它与编写当前的html新闻没有太大区别。但是让我开始思考-我可以在野外实际找到的最旧的浏览器(例如,具有最旧的HTML标准支持的浏览器?
我不是在谈论相关性或
caniuse-level-of-support
数字,只是出于某种或多或少的现实原因(不包括“这是Windows 3.1 vm进入互联网”的复古挑战) )的人仍然会上网。另外,一些安全要求(大部分是更新的SSL / TLS)切断了相当多的旧设备,大部分是游戏机,例如Dreamcast,带有网络访问磁盘的PS2和PSP或原始的Nintendo DS,因此也排除在外。 >除了上述IE6.0,我可以想到一些旧版手机的Opera mini浏览器(哪个版本?),或者某种仍在使用Netfront运行时的Internet设备(IIRC,Playstation 3仍使用webkit版本)。有任何建议吗?
编辑:正如@Graham Ritchie有用地指出的那样,我的问题本来可以说得更好一些:如果我想编写可以被...正确解析的网页,应该使用哪种语法和功能? [
鉴于OP要求此答案的评论适用于此。
WebAIM annual survey是获取此信息的好地方。
不幸的是,他们没有说明使用IE6的用户所占的比例,但是我认为总体上该比例不到0.1%,因为很少有网站仍可以在IE6上正常运行。
我亲自开发为IE9标准,因此将ES5用于JavaScript(或编译为ES5),HTML 5.0功能和CSS3非实验性功能。
这样做的原因是,由于使用IE8及更低版本的人与自己拥有的软件兼容,因此他们往往是屏幕阅读器用户。由于大多数网站都不适合他们,因此他们也倾向于使用非常特定的网站集。
[许多人会认为您必须包括所有人,在理想的世界中,您应该这样做。但是,您还必须考虑到可访问性的目标是为尽可能多的人提供最佳体验。使用IE8及以下版本无法实现此操作,因为您丢失了许多对可访问性有用的HTML5标准(与特定表单相关的属性,按<main>
,<nav>
等区域导航)。
那么,那些坚持使用IE6-8的人呢?
如上所述,他们往往是屏幕阅读器用户。这样做的好处是,只要您开发有效的HTML,使用正确的WAI-ARIA属性等(基本上采用AAA WCAG 2.1等级或尽可能接近,至少为AA等级),那么在IE6-8中,该网站仍即使不是很完美,也可以正常工作并可用。
因此,如果您必须支持较旧的浏览器。
您可以提供网站的单独版本(震惊,恐怖,喘气)。
这需要仔细计划,因为您必须确保在两个站点上都维护相同的信息,并且要确保在两个站点之间复制引入的功能。
这就是为什么没有人这样做的原因,所以我也不推荐
根本
。需要考虑的事情数量,可以引入的功能限制以及更新一个版本而不更新另一个版本(即使使用内容管理系统)的机会也很高。仅犯这些错误中的一个,可能会给您带来更多的问题,而不是根本不执行。结论
HTML5引入了许多出色的可访问性功能。通过按照较旧的标准进行设计,您最终可能会获得一个
less
可访问的网站。例如a lot of WAI-ARIA attributes don't work in modern browsers,请不要在较旧的浏览器中使用。试图退回使用WAI-ARIA属性将无法正常工作。
可访问且易于使用的布局如何? IE6是布局表的时代,因为CSS的位置非常有限。 (想要一个粘性导航栏吗?祝您实施顺利!)[为了提供“最大的努力”,我将使用HTML5填充程序至少修复IE7和IE8之类的布局,而IE6则不可行。
另一个论点是安全性。您到底打算如何编写与IE6兼容的安全JavaScript。赫克(Heck)尝试今天在互联网上找到有关“我如何在IE6中解决此问题”的单个信息。也许您的解决方案是根本不使用JavaScript。 (是的,有人会争辩说渐进增强功能允许您使用JavaScript,但是您遇到了JavaScript错误,这意味着您在“ Robust”下无法通过WCAG)。
哦,您知道您甚至不能使用<style>*{position:relative}</style><table><input></table>
,因为这会使浏览器崩溃?
作为对此部分的最终思考,Windows 98将运行IE9和NVDA。因此,我们不能说NVDA是免费的,人们可能没有财力来升级。我们可以争辩说他们不具备有关如何升级的技术知识,这时我只能说是在网站上写了一篇有关如何升级和重定向人员的文章?关于画线的位置,这有点愚蠢。
如何与老板争吵/如何帮助他们改变规格
您的老板处境不利,但可能没有说服规格容易更改的'火力'。
这在保持与IE6的兼容性且不影响辅助功能的情况下是不可能的。
错误获得可访问性的成本,再加上与尝试开发到这样的旧标准相关的额外开发成本,这是不可行的。
结合开发具有大量安全漏洞的应用程序(可能使站点易受攻击的可能性,我强烈建议我们将最低要求更改为IE8。
tl; dr
您实际上需要担心的最旧的浏览器是Internet Explorer9。即使如此,您仍然对兼容性要求很宽容。不要尝试开发一个可以在2001年以来遇到的每种浏览器中都可以使用的网站(是IE6,是2001年),您会为更多想要容纳不希望升级的人的事情而烦恼(Windows 98将运行IE9和NVDA)。
如果您可以创建符合HTML5 valid标准的CSS3 valid和WCAG 2.1 AA网站,那么您已经比世界上99%的网站都拥有更多的访问权限。
此外,某些网站完全需要更新的浏览器功能才能起作用...没有基于Web的后备。另外,当前的浏览器不支持任何功能(例如Safari,Lynx等),因此它不一定要考虑年龄,而是功能。
您应该问的问题是,您如何决定支持什么和不支持什么。无需指出您的分析和日志,这不是技术问题,而是业务问题。
此外,某些网站完全需要更新的浏览器功能才能起作用...没有基于Web的后备。另外,当前的浏览器不支持任何功能(例如Safari,Lynx等),因此它不一定要考虑年龄,而是功能。