摘要 Microsoft ASPNET 具有很多有用的功能能帮助您设计和生成符合 XHTML 和可访问性标准的 Web 站点本文探讨如何以及为什么生成这些符合标准的站点
简介
Web 标准使您能通过最少的工作生成可被最广大受众访问的 Web 站点Web 标准的承诺是只需设计页面一次即可让该页以完全相同的方式在任何现代的浏览器中显示和工作例如在按照标准生成以后旨在在 Microsoft Internet Explorer 中以某种方式显示的页可在其他浏览器(如Mozilla FirefoxNetscape NavigatorOperaCamino 和 Safari)中以相同的方式显示而无需完成任何额外的工作
Web 标准的一个额外好处是 — 使 Web 站点更易于为残疾人士访问这是一个范围广泛的受众群体包括视力衰退的中年人士刚刚在滑雪时跌断胳膊的人士以及完全失明的人士等使用标准可避免无意中阻止那些具有暂时性或永久性身体残疾的人士访问 Web 页
对于生成满足公共 Web 标准的 Web 站点而言Microsoft ASPNET 框架是最佳的框架特别强调的是ASPNET 框架中的每个控件都按照 XHTML 和可访问性标准进行了全面的检查和测试此外Microsoft Visual Studio NET 还包含一些新工具用于按照 XHTML 和可访问性标准验证 Web 页
本文的目的是为您提供有关 XHTML 和可访问性标准的概述并说明如何利用 ASPNET 和 Visual Studio NET 来满足这些标准在本文的结尾将分步演练以下功能即创建能够同时满足 XHTML 和可访问性标准的 ASPNET Web 站点
生成 XHTML Web 站点
HTML 在正式的场合已经过时了World Wide Web Consortium (WC) 于 年 月 日发布了 XHTML 的第一个版本作为推荐标准XHTML 标准的目标是取代 HTML按照 WC 的说法XHTML 是 HTML 的继承者()
XHTML 标准的制定者具有两大目标
;在文档结构和表示形式之间创建更明显的分离;将 HTML 重新表示为 XML 的应用程序
为了实现第一个目标WC 一直在坚定地从 HTML 中删除纯粹描述性的元素和属性(他们是从 HTML 开始这一过程的)例如XHTML Strict 不包含诸如 标记之类的元素或诸如 bgcolor 属性之类的属性因为这些元素和属性完全用于描述文档的外观它们与文档的结构没有任何关系
WC 一直在努力使 Web 站点设计人员和开发人员摒弃特定标记应当具有特定外观这一观念例如您可能会认为
标记之类的页元素来控制 Web 页的外观相反您应当通过使用层叠样式表来指示 Web 页的外观而且您所使用的层叠样式表应当是外部 层叠样式表请使用标记和属性来标记文档的结构而使用样式表来控制文档的表示形式
XHTML 的第二个目标是迫使 HTML 开发人员遵守更为严格的 XML 规则按照 WC 的说法XHTML 是 HTML 的作为 XML 应用程序的修订()换句话说使用 XHTML 生成 Web 页时实际上是在创建 XML 文档
XML 文档具有比 HTML 文档更严格的语法例如XML 区分大小写所有 XML 属性都必须放在引号内而且 XML 标记不能重叠强迫 Web 站点开发人员和设计人员遵守有更高要求的语言规则有很多好处
好处之一用 XHTML 标记编写的页具有更高的跨浏览器跨设备和跨操作系统兼容性如果在浏览器中打开传统的 HTML 页浏览器将千方百计地呈现该页浏览器将试图呈现该页即使您的 HTML 一团糟例如Internet Explorer(以及 Firefox 和 Opera)能够很好地显示下面的 HTML 页
this is bold and italic and this is bold
Internet Explorer 会恰当地显示该页 — 即使该页缺少 和 开始标记 标记不具有匹配的结束标记并且开始和结束 标记的大小写不一致所有主要的浏览器都能适应几乎任何 HTML 标记混合物并且不顾一切地呈现一些内容
浏览器的这种适应行为是危险的因为不同的浏览器(或相同浏览器的将来版本或在不同操作系统上运行的相同浏览器)可能以不同方式呈现错乱的 HTML实际上对于最新版本的 Internet ExplorerMozilla Firefox 和 Opera 而言它们呈现无效 HTML 的方式惊人地一致但是一旦开始违反游戏规则就不会得到任何保证
然而如果用 XHTML 的更严格的规则编写 Web 页那么 Web 页就更有可能以一致的方式与当前浏览器协作并且它们将继续与当前浏览器的未来新版本协作对于任何公司而言几乎都不具备针对每个浏览器在每个操作系统和每个设备上测试其 Web 站点的资源如果按照 Web 标准编写页面那么就不必具有这样的资源
XHTML 标准的版本
有三个版本的 XHTML 它们分别对应三个版本的 HTML
;XHTML Transitional;XHTML Strict;XHTML Frameset
XHTML Transitional 包含 HTML Transitional 中的全部标记和属性引入 XHTML Transitional 标准的目的是使现有 HTML 设计人员和开发人员无需经历太多的痛苦就能迁移到 XHTML