对于一些视觉障碍的人、手部受伤的人或者只是更喜欢键盘操作的人来说,使用键盘导航是非常重要的。在设计和开发 Web 站点时,我们应该考虑到这一点,为用户提供良好的无障碍体验。在本文中,我们将介绍一些方法和技巧,以改进网站的无障碍性。
1. 规范化 Tab 键顺序
Tab 键是在网站中进行导航的主要方式之一。在设计网站时,我们应该确保 Tab 键的顺序是有规律的。这意味着用户可以通过按 Tab 键从一个元素导航到另一个元素,而不会跳过任何元素或跳到不必要的元素上。
-- -------------------- ---- ------- ----- ------ --------------------------- ------ ----------- -------------- ------ ----- ------ -------------------------- ------ --------------- -------------- ------ ----- ------- ------------------------- ------
在上面的示例中,Tab 键的顺序应该是:用户名输入框,密码输入框,登录按钮。如果顺序不正确,用户可能会在输入框和按钮之间来回跳跃,导致不必要的困惑和时间浪费。
2. 为键盘操作添加可见反馈
键盘操作不像鼠标操作那样直观,因此我们需要为键盘操作添加可见反馈,以帮助用户了解他们当前所在的位置。
:focus { outline: 2px solid blue; }
在上面的示例中,我们使用 CSS 为焦点元素添加了一个蓝色的边框。这样,当用户使用 Tab 键导航时,他们可以清楚地看到他们当前所在的元素。
3. 使用可访问的 ARIA 标记
ARIA(Accessible Rich Internet Applications)是一组标记和属性,用于改善 Web 应用程序的可访问性。使用 ARIA 标记可以为键盘导航和其他无障碍功能提供更多的支持。
<nav> <ul role="menu"> <li role="menuitem"><a href="#">首页</a></li> <li role="menuitem"><a href="#">关于我们</a></li> <li role="menuitem"><a href="#">联系我们</a></li> </ul> </nav>
在上面的示例中,我们使用了 role
属性来定义菜单和菜单项。这样,屏幕阅读器可以更好地理解页面结构,使用户可以更轻松地导航。
4. 使用可见的焦点指示器
当用户使用键盘导航时,他们需要清楚地知道他们当前所在的元素。因此,我们应该使用可见的焦点指示器来帮助用户了解他们当前所在的位置。
:focus { outline: 2px solid blue; }
在上面的示例中,我们为焦点元素添加了一个蓝色的边框。这样,用户可以清楚地看到他们当前所在的元素。
5. 使用键盘事件
除了 Tab 键之外,我们还可以使用其他键盘事件来改善无障碍性。例如,我们可以使用 Enter 键来激活按钮或链接。
<button onclick="submitForm()">提交</button>
在上面的示例中,我们使用 onclick
属性来定义按钮的行为。但是,这种方法无法使用键盘来激活按钮。因此,我们应该使用键盘事件来解决这个问题。
<button onkeydown="if(event.keyCode === 13) {submitForm()}">提交</button>
在上面的示例中,我们使用 onkeydown
事件来捕获 Enter 键。如果用户按下 Enter 键,则会调用 submitForm()
函数。
结论
在设计和开发 Web 站点时,我们应该始终考虑用户的无障碍体验。使用键盘导航是非常重要的,因此我们应该确保网站的键盘导航是规范化的,并为键盘操作添加可见反馈和焦点指示器。此外,使用 ARIA 标记和键盘事件也可以改善无障碍性。通过这些方法和技巧,我们可以为用户提供更好的无障碍体验。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/675a4d03eea933d9cc2fa815