ARIA 状态及属性
这个页面列出了 MDN 上讨论的所有 WAI-ARIA 属性的参考页面。
ARIA 属性用于修改无障碍树中定义的元素的状态和属性。
备注: ARIA 仅用于修改无障碍树,进而改变辅助技术向用户呈现内容的方式。ARIA 不会改变元素的功能或行为。当使用非语义化的 HTML 元素来实现其他功能时,你必须使用 JavaScript 来控制元素的实际行为、焦点以及 ARIA 状态。
ARIA 特性类别
ARIA 的状态和属性(合称为“特性”)共有 4 类:
微件(widget)特性
aria-autocompletearia-checkedaria-disabledaria-errormessagearia-expandedaria-haspopuparia-hiddenaria-invalidaria-labelaria-levelaria-modalaria-multilinearia-multiselectablearia-orientationaria-placeholderaria-pressedaria-readonlyaria-requiredaria-selectedaria-sortaria-valuemaxaria-valueminaria-valuenowaria-valuetext
活动区域特性
拖放特性
关系特性
全局 ARIA 特性
无论是否应用了 ARIA 角色,某些状态和属性始终适用于所有的 HTML 元素。它们被定义为“全局”特性。所有角色和基本标记元素都支持全局状态和属性。
上面所列出的许多特性都是全局的,这意味着除非被“特别禁止”,它们可以被包含在任意的元素中:
aria-atomicaria-busyaria-controlsaria-currentaria-describedbyaria-descriptionaria-detailsaria-disabledaria-dropeffectaria-errormessagearia-flowtoaria-grabbedaria-haspopuparia-hiddenaria-invalidaria-keyshortcutsaria-labelaria-labelledbyaria-livearia-ownsaria-relevantaria-roledescription
除了 aria-label 和 aria-labelledby 这两个被“特别禁止”的属性,其他属性是全局适用的。这两个被“特别禁止”的属性无法在具有 presentation 角色或与其同义的 none 角色的元素上使用。
MDN 上介绍的状态和属性
以下是 MDN 上介绍的 WAI-ARIA 状态和属性。
- aria-activedescendant
aria-activedescendant属性用于标识焦点位于composite微件、combobox、textbox、group或application上时当前活动的元素。- aria-atomic
在 ARIA 实时区域中,
aria-atomic全局属性指示辅助技术(如屏幕阅读器)是否基于由aria-relevant属性定义的更改通知,呈现所有或仅部分更改区域。- aria-autocomplete
aria-autocomplete属性指示对于combobox、searchbox或textbox,输入文本是否可能触发显示用户预期值的一个或多个预测,并指定如果进行预测,预测将如何呈现。- aria-braillelabel
全局
aria-braillelabel属性定义了一个用于标记当前元素的字符串值,该字符串值旨在转换为盲文。- aria-brailleroledescription
全局
aria-brailleroledescription属性定义了一个人类可读的、作者本地化的缩写描述,用于指定一个元素的角色,旨在转换为盲文。- aria-busy
在 ARIA 实时区域中,全局的
aria-busy状态指示元素正在被修改,并且辅助技术可能希望等到更改完成后再通知用户更新情况。- aria-checked
aria-checked属性指示复选框、单选按钮和其他小部件的当前“已选中”状态。- aria-colcount
aria-colcount属性定义了当所有列都不在 DOM 中时,在table、grid或treegrid中的列总数。- aria-colindex
aria-colindex属性定义了元素相对于table、grid或treegrid中总列数的列索引或位置。- aria-colindextext
aria-colindextext属性定义了数字aria-colindex的可读文本替代。- aria-colspan
aria-hidden状态指示元素是否暴露给无障碍 API。- aria-label
aria-label属性定义了一个字符串值,用于为交互元素提供标签。- aria-labelledby
aria-labelledby属性标识用作应用到当前元素的标签的元素。