1. 给你的logo添加替代文本
这样有两个好处:屏幕阅读器能识别logo图片代表的含义,图片未加载到时,也能告诉非视障用户那里是你的logo。
几种方法:
- <img src="logo.png" alt="前端界">
或者,你用背景图来实现logo的话,也可以添加title属性来实现:
<span title="前端界"></span> </code>
当然,链接+背景图的方式是最好的,但最好也加上title属性:
<a title="前端界">前端界</a>
2.添加基本的Landmarks
ARIA Landmark是W3C定义的一套网站可用性规则,对于网站不同的模块添加描述性的Landmark——或者直接叫role,有利于读屏软件更好的理解你的网页,从而让视障用户更好的使用你的网站。
<nav role="navigation"> <div id="maincontent" role="main"> <form action="search.php" role="search">
等等,具体的规则请查看W3C的建议。
3.增强focus定义
其实很多网站会用尽一切办法去掉浏览器的:focus样式,特别是对于IE浏览器,其实,浏览器默认带上:focus样式是有道理的,它能指示用户当前的鼠标焦点位置是在哪里。这个对于键盘流特别重要。
所以请不要去掉:focus样式,甚至,你觉得默认的样式不好看或者不统一(IE是虚线框,Webkit是高亮的实线框,并且,Safari是蓝色,Chrome是橙色)也可以自己给定义一个高亮色:
a:focus{ outline:1px solid red; background:yellow; }
如果你的产品经理或者视觉设计师坚持要去掉focus状态的话,把TA的鼠标拿走一天并告诉TA只能用Tab切换链接就好了。。。
4.定义必填表单项
用aria-required属性(ARIA 属性类似于 ARIA 状态,但是在页面上是相对静态的,它们作为 HTML 元素的其他属性。小组件属性与小组件状态相似,但是该值在页面范围内保持不变。 )可以定义表单中的必填项——嗯,主要还是告诉读屏软件:
<input type="text" name="username" aria-required="true">
这使表格的输入字段成为必填字段。
5.给你的页面添加一个h1
原因很简单,不只是有利于SEO,对网站整体的可用性和可读性都很有帮助。另外,你没有代码洁癖么?
6.定义表格的表头
通常很多人习惯表格全部使用td标签,其实,表格不止有hd标签,还有th、col、scope等。
所以简单来说,表头换成th标签吧:
<th scope="col">Date</th>
7.定义表格描述
不要简单的在表格前面/后面加个p了事了,表格有专用的caption标签(定义表格标题)可用,就像图片一样。
<table> <caption>Class Schedule</caption> <tr> ……
8.避免“点击此处”
虽然这样的链接描述对普通人都无所谓,但是对读屏软件来说,是相当糟糕的,它其实是对视障用户的一种干扰。
所以,直接把链接用到正地方吧。
9.去掉tabindex
曾经,很多人用tabindex来“增强”用户体验,但是这个属性却会打乱页面的正常阅读顺序,对视障用户是灾难性的,对普通用户也未必是友善的。
所以千万不要滥用tabindex属性。
tabindex 属性 -- 代表使用"Tab"键的遍历顺序
可以使用Tab键遍历页面中的所有链接与表单元素,当遍历到某个链接时, 按Enter即可.遍历时会按照tabindex的大小决定顺序
遍历到某个链接的时候,会有虚线框包围链接,这时按回车键即可进入链接的页面.
取值:
数字,范围为[1~32767]
示例:
<a href="http://www.dreamdu.com/xhtml/" tabindex="1">1</a> <a href="http://www.dreamdu.com/css/" tabindex="3">3</a> <a href="http://www.dreamdu.com/xhtml/tag_a/ " tabindex="2">2</a> <!--连续按 "Tab",可以改变焦点的位置.遍历的顺序是1-2-3.-->
10.在线检测一下
呃,看到这里发现其实是个广告,但是如果能检测出来网站可用性问题,也是件好事情,WebAIM开发的一个网页工具,输入URL就会自动检测。测试了一下还不错,http://wave.webaim.org/
人人都能用的10条网站易用性技巧