原文:http://www.microsoft.com/china/msdn/library/webservices/asp.net/USdnasppacsaraf1.mspx?mfr=true

简介

虽然大多数在线用户可以使用带有典型浏览器设置的 Web 浏览器来浏览 Web 站点,但是有残疾的用户通常使用其他方法来访问在线信息。举例来说,盲人用户可能使用一种纯文本浏览器,该浏览器可以将文本转换为盲文,或者使用屏幕阅读器大声朗读文本。一个有视觉障碍的人可能仍使用如 Internet Explorer 这样的浏览器,但要借助于屏幕放大镜或借助于配置为使用特大字体大小的浏览器。行动障碍可能阻碍了用户用鼠标或键盘作为输入设备。

因为有残疾的人通常使用特殊的设备或非标准的浏览器配置浏览 Web,所以,一个 Web 站点的整体设计和 HTML 标记极大地影响了残疾人的用户体验。比如说,用绝对度量单位(如 10pt)指定字体大小会以该绝对大小显示字体,并且与用户在其浏览器中配置的文本大小无关。有 Flash 或 Shockwave 界面而且不提供可替代的文本表示形式的站点,实际上拒绝了使用盲文设备或文字语音合成器的用户。一个 Web 站点只有设计为可正常转换到可替换的设备时,才能说是易于访问的。

此时,您也许会想:“我为什么要费心确保我的 Web 站点是易于访问的呢?”我想有两个主要原因:

1.

这是一桩好生意 — 根据 2000 年美国人口普查,4,970 万美国人有残疾;Harris Interactive 2000 年 6 月所做的调查显示 43% 的美国残疾人是经常上网的用户,而且残疾用户上网花费的时间几乎是非残疾用户的两倍。把这两个调查的结果放在一起,您会发现有超过 2,100 万的美国残疾人经常上网。如果不花费时间来使您的 Web 站点易于访问,您会将 2,100 万潜在访问者拒之门外。

2.

这是政府机构的指令 — 在 1998 年,美国政府通过了 Section 508 of the Rehabilitation Act,要求联邦机构的电子信息对于残疾人是可访问的。这一法案提供了软件应用程序、Web 应用程序以及电信产品和视频产品的可访问性准则。不仅要求联邦机构实施可访问性准则,而且还要求签约为联邦政府工作的私人公司也要做到这一点。(许多美国之外的国家/地区对政府机构也有类似的可访问性要求。)因此,如果您为政府或为给政府提供服务的公司工作的话,创建易于访问的 Web 应用程序是必须的。

在本文中,我们将讨论为确保您的 ASP.NET Web 站点易于访问可以采取哪些步骤。我们将简要地看一下目前可用的官方可访问性准则,然后着重看一下美国政府使用的可访问性准则。本文专注于考虑如何使用继承将不易于访问的 ASP.NET Web 控件变为满足可访问性准则的控件。

clip_image001返回页首

WAI、WCAG 和 Section 508

使一个 Web 站点更加易于访问有许多步骤,但是这些步骤到底是什么?一个站点需要使用其中的多少步骤才可视为易于访问的站点?根据您询问的对象以及他们需要提供的可访问性级别的不同,这些问题会有所不同。对一个财富 500 强 (Fortune 500) 公司的 Intranet 站点来说,它很可能比一个只有 25 名员工的公司的 Intranet 站点需要有更高级别的可访问性。

WC3 关于可访问性的说法

为了帮助将此讨论正式化,1999 年 WC3 官方成立了 Web Accessibility Initiative (WAI),这是分配了为残疾人提高 Web 站点可用性这一任务的一个团体。WAI 的第一个行动是发布了 Web Content Accessibility Guidelines (WCAG)。WCAG 提供了一个包括 14 条准则的列表,以便设计易于访问的 Web 站点。

准则本身并没有详细说明为使一个 Web 站点更加易于访问应采取的操作。确切地说,它们是对如何确保可访问性提供解释的高级别声明。举例来说,准则 1 是“对听觉和视觉内容提供等同的替代内容。”每一条准则都附带一组检查点。检查点详细说明了为确保满足可访问性准则而可采取的操作。每一个检查点被给予下列优先级值之一:

优先级 1 — Web 开发者必须 满足这一检查点,否则一个或多个用户组将不能访问此内容。

优先级 2 — Web 开发者应该 满足这一检查点,否则一个或多个用户组将发现难于访问此内容。

优先级 3 — Web 开发者可以 满足这一检查点,否则一个或多个用户组在访问此内容时可能有困难。

除了列出这 14 条准则及其关联的、设置优先级的检查点之外,WCAG 还为 Web 站点的可访问性提供了三级分类等级。实现所有优先级 1 检查点的站点被评定为符合 A 级。实现所有优先级 1 和优先级 2 检查点的站点被评定为双 A 级,而实现所有检查点的站点被评定为三 A 级。WCAG 提供了一组很好的操作以便执行,这样确保了不同的可访问性级别。

对 WCAG 的详尽讨论超出了本文的范围。下面列出的是 WCAG 的 14 条高级别准则。每条准则的检查点及其关联的优先级可以在官方的 Web Content Accessibility Guidelines 1.0 specification 中找到。

1.

对听觉和视觉内容提供等同的替代内容。

2.

不要仅依靠颜色。

3.

适当地使用标记和样式表。

4.

阐明自然语言的使用。

5.

创建正常转换的表格。

6.

确保以新技术为特性的页面转换正常。

7.

确保用户对时间敏感内容更改的控制。

8.

确保嵌入式用户界面的直接可访问性。

9.

进行与设备无关的设计。

10.

使用过渡解决方案。

11.

使用 W3C 技术和准则。

12.

提供上下文和定向信息。

13.

提供简洁的导航机制。

14.

确保文档清楚简单。

美国政府的可访问性准则

1998 年,美国政府修改了康复法案 (Rehabilitation Act),制定了由联邦政府维护的电子和在线内容的可访问性规则。这些规则通常被称为“Section 508 规则”,这就是详细说明可访问性要求的康复法案的 Section 508。

Section 508 的完整文本以及 FAQ、留言板和培训信息都可在 www.Section508.gov 上在线找到。其他关于 Section 508 的信息可在 www.access-board.gov/508.htm 上获得。

对于 Web 站点的可访问性,联邦政府有 16 条规则。前 11 条是来自 WCAG 的检查点,后 5 条是针对 Section 508 的,而不是 WCAG 的组成部分。这些规则可在 Section 508 的 1194.22 条款中找到,为了完整说明在这里重复一下:

1.

对每一个非文本元素都应该提供一个等同的文本。

2.

任何多媒体演示的等同替代内容都应该与该演示同步。

3.

Web 页应该经过设计,以便所有通过颜色传达的信息无需颜色也可获得,比如通过上下文或者标记获得。

4.

文档应该经过组织,这样它们无需关联的样式表也可阅读。

5.

应该为服务器端图像映射的每个活动区域都提供冗余的文本链接。

6.

应该提供客户端图像映射而非服务器端图像映射,除非区域不能使用可用的几何图形来定义。

7.

应该为数据表标识行和列标题。

8.

对于具有两个或多个逻辑层次的行或列标题的数据表,应该使用标记为这些数据标关联数据单元格和标题单元格。

9.

应该使用有助于框架标识和导航的文本来为框架加上标题。

10.

页面应该经过设计,以避免在频率大于 2 Hz 并小于 55 Hz 的情况下导致屏幕闪烁。

11.

当以任何其他方法都无法达到符合性时,应该提供一个有等同信息或功能的纯文本页以使 Web 站点符合这部分的规定。只要主页面更改,纯文本页的内容就应该更新。

12.

当页面使用脚本语言来显示内容或创建界面元素时,由脚本提供的信息应与辅助技术可以阅读的功能文本一致。

13.

当 Web 页要求客户端系统上有小程序、插件或其他应用程序来解释页面内容时,该页必须提供一个到插件或小程序的链接。

14.

当电子表单设计为在线完成时,该表单应该允许用户使用辅助技术来访问完成并提交表单所需的信息、字段元素和功能,包括所有的说明和提示。

15.

应该提供一个方法允许用户跳过重复的导航链接。

16.

当需要一个定时响应时,应该警告用户并给予其充分的时间以表示需要更多的时间。

这 16 条规则是由美国政府精心制定的,并只命令联邦机构的 Intranet 和 Internet Web 站点执行。但是,在命令政府机构的 Web 站点执行可访问性准则方面,美国并不是独一无二的。澳大利亚、加拿大、法国、德国、日本和英国等国家/地区也都有类似的法律。如需按国家/地区列出的可访问性政策的列表,请访问 WAI 的 Policies Relating to Web Accessibility 页。

检查是否符合可访问性

通过使用免费的 Bobby Online Portal,您可以快速确定一个给定的 Web 页是否符合 WCAG 或 Section 508。在此 Web 站点中,您可以输入一个 Web 页的 URL,选择检查或是符合 WCAG 或是符合 Section 508,然后查看列出符合性级别的报告。 1 展示了 Bobby 在线门户 (Bobby Online Portal) 的屏幕截图,显示出在 Microsoft MSDN 主页上将要执行的一个 WCAG 符合性测试。

clip_image002

1. Bobby 在线门户

2 展示了 MSDN 主页报告的屏幕截图。如您所见,MSDN 页不符合 WCAG 可访问性准则的任何级别,因为它丢失了图像的可替代文本。 2 中没有显示的是,还有 5 个优先级 2 的冲突和 4 个优先级 3 的冲突。

clip_image003

2. 评估 MSDN 页的可访问性

对于确定您的 Web 站点是否满足 WCAG 或 Section 508 的可访问性准则来说,Bobby 在线门户是一个很好的工具。遗憾的是,Bobby 在线门户每次只能处理一个 URL,每分钟也只允许执行一个查询。不过,有可用的商业产品可用于测试整个 Web 站点是否符合可访问性,并且不限定每分钟只执行一定数量的查询。有关这些商业产品的更多信息可以在 Bobby 在线门户站点上找到。