WaSP: 为标准而战
为了 web 内容的创造与诠释,万维网联盟 (W3C) 与其他的标准化团体一道创立了许多技术。这些我们称之为“web 标准”的技术经过了精心设计,在保证 Web 上发布的文档具有长期生命力的同时,确保了尽可能多的 web 用户尽可能充分地享受到其优势。你可以从侧栏看到这些标准的细节。
运用这些标准设计和建设的网站简化了产品流程,降低了成本,还让更多的人能够使用更多不同的设备访问它们。传统的桌面浏览器在进化、新式的网络访问设备会出现,遵循标准要求的网站将不受这些情况的影响,一如既往地正确工作。
既然如此直截了当,如此合情合理,问题又来自何处呢?为何这里会有一个 Web 标准计划?
问题
尽管在 W3C 成立时占主导地位的浏览器厂商就都已经加入,多年以来他们却从未信守承诺。厂商未信守然诺,浏览器仍各自为政,标准无一致实现,Web 自然也支离破碎,这直接损害了设计师、开发者、用户和业界的利益。
对 W3C 关键标准缺乏一致支持令消费者都感到沮丧:他们如果使用了“错误”的浏览器,往往看不到正确的内容,做不到想做的事情。残疾人士或有特别需求的人士,对这些问题的感受尤为深刻。
困境与代价
与之同时,对 W3C 关键标准支持的缺失也导致设计师、开发者和站点管理者面临一个糟糕的困境:他们有没有能力为自己站点中每个页面实现多种版本,去适应各不相容的浏览器?倘若没有,应放弃哪些,又有多少潜在的客户随之被放弃?无论怎么选择,总得付出高昂的代价。至今如此。
浏览器市场的分裂让所有站点的开发增加了 25% 的成本。因为预算不足,许多人开发的站点把潜在的客户拒之门外。即便了解标准的开发者们也不愿意在没有浏览器支持的情况下开发符合标准的站点,更不用说那些不了解的了——许多人现在依然不了解,包括那些在月入百万的大机构工作的,号称掌握了 ASP, Java, Flash MX 和 .Net 的高手们,他们对结构化语义化的标记,对样式表,对结构 (structure) 与表现 (presentation) 的分离都近乎无知。
因为浏览器不兼容性的妨害,许多设计师只能小心翼翼地在网站中使用那些最老的也是最通用的 web 技术。尽管这些站点能够胜任在所有的浏览器上正常工作,却是拿贫乏的消费者吸引力和受限的功能换来的。
又有一些设计师依赖图形化的编辑器、站点发布工具来创建多个层面的标记和代码,以期应对时兴浏览器的不同怪癖。这么做既浪费了金钱也浪费了带宽,而且站点往往在浏览器换代后又不能用了 (而且这么做从来无法令其余的浏览器或浏览设备正常工作,从读屏器到 Lynx 再到手持设备,一直到 Opera 这样并非特别热门的浏览器皆然)。从某种意义上说,Web 陈尸遍野,如果那些一度走红却不再被现代浏览器支持的站点可以称作“尸体”的话。更糟糕的是,这样的站点还在不断出现。
以上种种,令许多设计师对 web 标准灰心丧气,干脆将它放弃,全面转向一些私有的环境。可尽管这些环境颇有创造潜力,却往往不够普及,或无法提供收藏夹、打印、复制粘贴等 web 用户在获取信息、事务操作时所必备的常见需求。
应运而生
针对这些问题,Web 标准计划 (Web Standards Project, WaSP) 于 1998 年成立,目标便是促进核心的 web 标准的推广,鼓励浏览器厂商对标准的支持,为大家寻求一条简单而便利之路。
尽管我们一开始遇到过阻碍 (特别是来自浏览器公司的市场部和公关部的阻碍),但我们最终获得了成功——部分原因是许多浏览器公司的工程师们与我们意见一致,并将 WaSP 作为他们向管理层斗争的盟友之一。
始于 2000 年,主导市场的浏览器支持标准的版本一个接一个地发布,所支持的这些标准都是我们所鼓吹或极力鼓吹过的。现在这些浏览器,和它们的竞争者们,都出色的支持了 HTML 4, 兼容模式的 XHTML 1.0, CSS Level 1, ECMAScript (JavaScript 的标准化版本) 和 DOM,就算尚未完全支持的,也都在改进的过程中。
多亏这些浏览器,设计师和开发者们才能自如地用 XHTML 和 CSS 建设网站,一般都能将结构与表现分离,从而保证最大限度的可移植性 (portability) 和亲和力 (accessibility)。只要花些心思,他们还能利用 W3C 标准的 DOM 给自己的站点添加复杂的行为特性。
那现在还有什么问题,为何 Web 标准计划依然存在?
前路漫漫
尽管今天的浏览器都已支持标准,但成千上万的专业设计师和开发者还在使用过时的方法,把结构与表现拴在一起,有时甚至只把 (X)HTML 当作一个设计工具,完全忽视语义结构。高薪聘请的专家费尽心思做出的站点依然不符标准、缺乏亲和力,通篇尽是结构混乱的标记、巨大的图片地图 (image map)、嵌套了一层又一层的表格,还用早已过时的脚本来检测浏览器,没想到其导致的可用性 (usability) 问题,竟恰是原先他们希望用这些脚本来避免的。
大量涉及 web 开发的书籍仍然在讲授过时的方法,大量的实践人员仍然以此为傲:他们的站点能在各种桌面浏览器上显示一致的效果:无论这个浏览器是否符合标准,殊不知代价是亲和力、长期的生命力和未来的兼容性,更遑论在其他的设备上使用了。还有些人仍然在开发的私有代码只能在几个流行的浏览器上运行。
所以,WaSP 的主要目的之一就是为我们的朋友提供这些教育性的资源,让他们能够学到符合标准的方法,这对他们有利,对他们的客户有利,对他们站点的用户也有利。
许多专家完成作品的图形化编辑工具,是在浏览器混战最盛之时开发的,上面我们也曾提到,这些工具生成的代码往往只针对早期的 4.0 版本浏览器的怪癖优化,既不符合标准,也缺乏语义信息。而在 2002 以后两个最重要的图形化编辑器对 web 标准和亲和力的支持大大地改进了 (其一正是在 Web 标准计划的帮助下完成这一改进)。尽管如此,但是专业人士要善用他们,还是得打好基础,了解用 web 标准建构站点的优势。这也是我们教育开发者的目的之一。
如果希望网站能随着浏览器和设备的进步保持青春,客户与站点管理者也需要这里的信息。WaSP 所希望的是,在那些站点管理者了解到标准的优势所在后,能够不再把网站仅仅当作一种特殊的平面广告:网站并不非要在所有的环境下显示得一模一样。接下来,他们就会专注在提供真正适当的内容与功能,即使呈现方式或许会随着各家浏览器与设备的需求及性能略有不同。
原始的任务声明
WaSP 在 1998 年发布的任务声明可以在 archive.webstandards.org
找到。
© 1998-2006 Web 标准计划, www.webstandards.org
简体中文翻译:Jjgod Jiang
The Web Standards Project is a grassroots coalition fighting for standards which ensure simple, affordable access to web technologies for all.
Translations:
- Mission [Chinese Translation - Simplified]
- Mission [Chinese Translation - Traditional]
- Mission [Croatian Translation]
- Mission [Dutch Translation]
- Mission [French Translation]
- Mission [German Translation]
- Mission [Italian Translation]
- Mission [Japanese Translation]
- Mission [Korean Translation]
- Mission [Kurdish Translation]
- Mission [Polish Translation]
- Mission [Portuguese Translation]
- Mission [Serbian]
- Mission [Spanish Translation]
何为“标准”?
当我们提到 Web 的核心,或关键标准时,指的是:
- 结构化和语义化的语言
- 超文本标记语言 (HTML) 4.01
- 可扩展超文本标记语言 (XHTML) 1.0
- 可扩展标记语言 (XML) 1.0
- 表现层语言
- 层叠式样式表 (CSS) level 1
- CSS level 2 revision 1
- CSS level 3 (CRs 或更理想的)
- 对象模型
- 文档对象模型 (DOM) level 1
- DOM Level 2 (HTML, Core, Events, Traversal)
- DOM Level 3 (Core)
- 脚本语言
- ECMAScript 262 (JavaScript 的标准化版本)
已经完整支持上述内容的先进浏览器还应考虑下面这些:
- 对 HTML4 和 XHTML 1.0 的扩展与更新
- 微格 (microformats)
- Web 应用 (Web Applications) 1.0 (即所谓 "HTML5")
- XHTML 1.1
- 其他的标记语言
- 数学标记语言 (MathML) 1.01
- MathML 2.0
……还有其他新兴的标准,比如为电视设备、手持设备上的浏览器而设立的标准。