可访问性浅析
在Web前端开发界,有三个词经常被提及:可用性(Usability)、可访问性(Accessibility)和可维护性(Maintainability)。
可用性指的是:产品是否容易上手,用户能否完成任务,效率如何,以及这过程中用户的主观感受可好,是从用户的角度来看产品的质量。可用性好意味着产品质量高,是企业的核心竞争力。
可维护性一般包含两个层次,一是当系统出现问题时,快速定位并解决问题的成本,成本低则可维护性好。二是代码是否容易被人理解,是否容易修改和增强功能。可维护性和可复用性、可扩展性等有交叉的地方。构建可维护性好的代码,对企业的长期发展非常重要。
可用性和可维护性定义比较清晰,在软件界研究也非常多,在此不展开讨论。我们来看看可访问性。
什么是可访问性?很难给出严格的定义。在《Web Content Accessibility Guidelines 1.0(Web内容可访问性指南)》里,对可访问性的描述是:Web内容对于残障用户的可阅读和可理解性。同时指南里还特别指明:提高可访问性也能让普通用户更容易理解Web内容。具体而言,要考虑以下两方面:
- 无论用户是否残障,都得通过用户代理(User Agent)来访问Web内容。因此要提高可访问性,首先得考虑各种用户代理:桌面浏览器、语音浏览器、移动电话、车载个人电脑等等。在Google, 专门聘请了一些残障雇员,来帮助提高产品的可访问性。
- 还得考虑用户访问Web内容时的环境限制。比如:嘈杂的环境、过暗或过亮的房间、或者是免提等各种情况。这是更高一层次的可访问性要求,做到了,能造就产品在特定领域的核心竞争力。
理解以上两点,能解答不少疑惑。比如Web开发社区经常讨论的话题:我们真的要考虑浏览器禁用JavaScript/CSS的情形吗?我的理解是,要考虑的其实不是禁用了JavaScript/CSS的浏览器,而是那些对JavaScript/CSS不支持或支持不好的用户代理。比如语音阅读器,手机浏览器等,JavaScript提供的是一层可访问性,不能代替内容本身。当然,从渐进增强的角度讲,鼓励使用高级特性,只是同时要做到优雅降级,让低端用户代理上,也能保留低保真的体验。
理解可访问性,同时能有助于更好地理解语义的重要性。为何要看重em和strong的区别?因为在语音阅读器上,对这两个标签的理解是不一样的,错误使用会导致语调的错误变化和重音的位置不对。这对盲人用户来说,是极大的不尊重。
关注可访问性,是网络上的尊老爱幼,体现的是前端开发工程师对社会的道义感和关爱度。

January 12th, 2009 on 22:38
对于js和css的应用,不应该是增加功能,而是增强功能。
以前我说在应用js的情况下,添加是必须的,以提示不支持javascript的用户。但是现在发现这是一种态度问题,我们不能“歧视”任何用户,而是应该尽量满足所有用户,真正为用户着想不是添加标签,而是没有js支持我的网页应该还是充满活力的,而不是“死”了。
January 13th, 2009 on 12:59
所以我们也需要博爱
January 13th, 2009 on 13:15
应该立足与html,使用JavaScript和CSS来丰富体验
January 14th, 2009 on 12:45
如果用户禁用了js,那么很多功能都将失效。曾经看过google的igoogle主页,其就使用了js,当我禁用了js,其使用层将其盖住,并且告知:此功能必须使用JavaScript,请开启。
个人觉得,现在js的重要性已经今非昔比,当然网站的js的安全性也备受挑战。用户禁用了js让其不能正常使用网站这并不过分,只是我们需要告知他,他不能正常使用的原因,并且最好告知其解决办法。
January 16th, 2009 on 0:14
菜鸟也咬文嚼字一下:
“从渐进增强的角度讲,鼓励使用高级特性,只是同时要做到优雅降级”,虽然progressive enhancement和graceful degradation的结果一样,但是个人认为这两个是比较矛盾的开发思路,从维基摘了一段话。
“The strategy is an attempt to subvert the traditional web design strategy known as “graceful degradation”,”
ALA最近好像有一些列的文章在谈渐进增强。
March 3rd, 2009 on 20:31
在这些方面,要做的网站到底需不需要考虑以上因素,我比较赞同你在另一个博客所提到的观点,根据所要的需求是web app 或者是page,如果是page,当下是还需要考虑无侵入编程,但是如果是app,完全可以抛开预留退路,并且明确给出提示,如果不支持,将不能正常使用网站功能。
December 10th, 2009 on 13:51
同意Sinina的观点
May 28th, 2010 on 13:03
支持一楼阿肆的观点
leave a reply