ARIA: aria-selected 属性

aria-selected 属性用于指示各种组件当前的“选中”状态。

描述

aria-selected 属性用于指示 gridcelloptionrowtab 角色的当前“选中”状态。

此属性用于指示单选和多选复合组件中哪些元素被选中。如果一次可以选择多个元素,请在 grid、listbox、tablist 或其他所有者角色上包含 aria-multiselectable="true",同时仅在可选择的单元格、选项和选项卡上包含 aria-selected

对于其他角色,当前选中状态使用 aria-current 设置,或者根据角色可能是 aria-checkedaria-pressed

同时支持 aria-selectedaria-current 的组件对每个属性都有不同的含义。例如,在导航树中,aria-current="page" 可用于指示当前显示的页面,而 aria-selected="true" 则指示用户激活 treeitem 时将显示的页面。

网格

在可聚焦的 gridcell 上设置 aria-selected="false" 表示该单元格可被选中。如果网格允许一次选择多个 gridcell,请在具有 grid 角色的元素上设置 aria-multiselectable="true"。在列或行标题 gridcell 上设置 aria-selected 不会将状态传播到列或行中的其他单元格。

选项

aria-selectedaria-checked 对于 option 都是有效的。一些用户界面使用 aria-selected 指示单选列表框中的选择,使用 aria-checked 指示多选列表框中的选择。

除非 aria-selectedaria-checked 在用户界面中的含义和目的不同,并且每个状态的含义和目的都显而易见,并且 UI 提供了单独的方法来控制每个状态,否则不要在同一 listbox 包含的 option 元素上同时指定 aria-selectedaria-checked

aria-selected 属性支持 row,但不支持 column。如果网格支持选择,当一个单元格或行被选中时,选中的元素将设置 aria-selected="true"

如果网格支持列选择并且一个列被选中,则该列中的所有单元格都将 aria-selected 设置为 true

制表符

在 tablist 中,aria-selected 用于 tab 以指示当前显示的 tabpanel

tablist 中,选中的 tab 应设置为 aria-selected="true"。tablist 中的所有非活动 tab 都应设置为 aria-selected="false"。设置状态只会影响辅助功能树:请确保通过样式将活动 tab 的选中状态在视觉上明确表示。tab 角色上 aria-selected 的默认值为 false

如果一次可以选择多个 tab,请在 tablist 上包含 aria-multiselectable

示例

在此 tablist 示例中,第一个 tab 被选中

html
<div class="tab-interface">
  <div role="tablist" aria-label="Sample Tabs">
    <span
      role="tab"
      aria-selected="true"
      aria-controls="panel-1"
      id="tab-1"
      tabindex="0">
      First Tab
    </span>
    <span
      role="tab"
      aria-selected="false"
      aria-controls="panel-2"
      id="tab-2"
      tabindex="-1">
      Second Tab
    </span>
    <span
      role="tab"
      aria-selected="false"
      aria-controls="panel-3"
      id="tab-3"
      tabindex="-1">
      Third Tab
    </span>
  </div>
  <div id="panel-1" role="tabpanel" tabindex="0" aria-labelledby="tab-1">
    <p>Content for the first panel</p>
  </div>
  <div id="panel-2" role="tabpanel" tabindex="0" aria-labelledby="tab-2" hidden>
    <p>Content for the second panel</p>
  </div>
  <div id="panel-3" role="tabpanel" tabindex="0" aria-labelledby="tab-3" hidden>
    <p>Content for the third panel</p>
  </div>
</div>

注意: ARIA 仅修改元素的辅助功能树以及辅助技术如何向用户呈现内容。ARIA 不会改变元素的任何功能或行为。

true

可选中元素被选中。

false

可选中元素未被选中。对于 tab 的隐式默认值。

undefined(默认值)

元素不可选中。

相关接口

Element.ariaSelected

ariaSelected 属性是 Element 接口的一部分,它反映了 aria-selected 属性的值。

ElementInternals.ariaSelected

ariaSelected 属性是 ElementInternals 接口的一部分,它反映了 aria-selected 属性的值。

相关角色

用于角色

继承到角色

规范

规范
无障碍富互联网应用程序 (WAI-ARIA)
# aria-selected

另见