如何利用 ARIA 规范提高你的网站无障碍性?

今天,越来越多的人使用互联网进行工作和娱乐,这使得网站的无障碍性变得至关重要。无障碍性是指网站能够让所有人,包括有视觉、听觉、肢体等功能障碍的人、老年人,以及使用辅助技术的人都能够轻松地访问和使用。无障碍性的实现除了要遵循 WCAG2.0 等国际标准之外,还需要通过 ARIA 规范为辅助技术提供更好的支持。

ARIA 规范是指用户界面的无障碍性指南,它可以使那些使用辅助技术浏览网页的人更容易地理解页面的结构和内容,同时也让开发人员更好地描述他们的应用程序。下面我们将介绍如何在你的网站中使用 ARIA 规范提高无障碍性。

1. 结构化语义化

ARIA 规范侧重于向辅助技术用户提供更好的页面元素结构。在开发网站时,应该优先考虑 HTML 和 CSS 的结构和语义化,以及使用正确的标签和属性来提示页面的主要组成部分。

在代码中,你应该使用语义化标记来区分是文本、段落、列表、表格等。同时在每个页面组件中使用 role 属性来告诉屏幕阅读器组件的作用。参考下面的代码示例:

------- --------------
  -------------
  ---- ------------------
    ----
      ------ ---------------------
      ------ ---------------------
      ------ ---------------------
    -----
  ------
---------
----- ------------
  -------- --------------
    ------------
    ------------
  ----------
-------
------- -------------------
  -----------
---------

2. 表单和按钮

ARIA 规范提供了一些属性来描述表单和按钮的一些重要属性,如验证状态、状态变更、失去焦点等。下面是一些常用的属性:

  • aria-label:指定元素的文本标签;
  • aria-describedby:为表单或按钮指定一个或多个 ID,它们的内容概述了该表单或按钮的用途;
  • aria-required:指示是否需要填写表单元素;
  • aria-invalid:指示输入是否无效。

像下面这个例子展示如何添加 ARIA 属性来描述表单:

------ ------------------------
------ ----------- ----------- ------------------------ -------------------- ------------------- --
----- --------------------------

3. WAI-ARIA 标准组件

ARIA 规范还提供了一组 WAI-ARIA 标准组件,这些组件包括按钮、对话框和标签页,以及可以自定义和扩展的组件。使用这些组件可以很容易地遵循一些最佳实践。

ARIA 中的按钮组件有两个角色:button 和 link,可以分别用于 button 元素和 a 元素上。按钮组件可以使用 aria-pressedaria-disabled 属性来指示状态。

---- ------ ---
------- -------------------- --------------------------------

---- ---- ---
-- -------- ------------- -------------------- -----------------------------

ARIA 中的对话框组件将元素写入屏幕阅读器的名称,使屏幕阅读器将其标记为对话框。该组件还提供了属性用于标识对话框是否模态,并指示通过 Esc 键和 X 按钮是否可以关闭对话框。

---- ------------- ------------------------------ ------------------
  --- ----------------------------
  -------------
  -------------------
------

ARIA 中的标签页组件使用三个角色:tablist、tab、tabpanel,这是为了更好地描述标签页之间的关系。 aria-selected 属性告诉屏幕阅读器哪个标签是当前选项卡。

---- ---------------
  ------- ---------- ---------------------------------
  ------- ---------- ----------------------------------
  ------- ---------- ----------------------------------
  ---- -------------------------
  ---- -------------------------
  ---- -------------------------
------

结论

通过使用 ARIA 规范,你可以轻松地实现无障碍性,并帮助所有人更好地享受网站的服务。使用语义化标记和正确定义的 role 属性,可以让辅助技术用户更容易地理解页面的结构和内容。通过使用 ARIA,你可以保证你的网站可以让所有人都能轻松地使用。

这里提供的 only a part of solution,事实上更多元素有更多的属性,开发者可以结合使用 WCAG2.0 标准来提高无障碍性。同时,ARIA 技术在一些移动应用也有广泛的应用,比如 iOS 和 Android 平台,开发者可以通过学习这个规范在多个平台上提高用户体验。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/6737380a317fbffedf08f682