ARIA:aria-roledescription 屬性
aria-roledescription 屬性定義了一個人類可讀的、作者本地化的元素角色的描述。
描述
某些輔助技術(Assistive Technologies,AT),例如螢幕閱讀器,會將元素的角色作為使用者體驗的一部分進行呈現。aria-roledescription 屬性提供了一種方法,可以定義一個由 AT 作為元素角色呈現的、不同的人類可讀名稱。
注意: 僅在需要闡明非互動式容器角色的用途,或為小部件提供更具體的描述時,才使用 aria-roledescription。
使用者依賴於已知角色名稱的呈現來理解元素的用途,以及(如果是小部件)如何與它進行互動。因此,僅在需要闡明 group 或 region 等非互動式容器角色的用途,或為小部件提供更具體的描述時,才使用 aria-roledescription。
aria-roledescription 屬性會覆蓋 AT 本地化和表達角色名稱的方式。當您覆蓋使用者理解的角色名稱時,可能會對使用者理解和與元素互動的能力產生負面影響。
避免使用 aria-roledescription 屬性。當出現一個用例特別值得擁有一個獨特的角色描述時,這些互動通常可以分解成具有相關角色的更小的部分。
當沒有與您小部件的互動模型相對應的語義或 ARIA 小部件角色時,請使用 role="application",提供一個具有人類可讀的、作者本地化的自定義角色名稱的 aria-roledescription,並使用 aria-describedby 提供使用者說明。
AT 可能會自定義和本地化 ARIA 角色的名稱。如果您使用 aria-roledescription 來改變角色名稱向用戶呈現的方式,請記住處理本地化。當頁面被本地化時,該值應被翻譯。
改變角色向用戶呈現的方式不會影響元素的 [功能]。例如,如果一個元素的角色是 region 或 button,當 AT 提供導航到下一個區域或按鈕的功能時,如果您分別將 aria-roledescription 設定為 continent 和 escape,AT 仍然會允許這些功能導航到區域和按鈕。
再次強調,避免使用 aria-roledescription。在此示例中,escape 對使用者沒有實際意義,但帶有“escape”作為標籤的 button 卻有。
使用 aria-roledescription 時,還要確保應用它的元素具有有效的 ARIA role 或具有隱式角色語義,並且該值本身不為空,並且包含的不僅僅是空白字元。
使用 aria-brailleroledescription 時,aria-roledescription 是必需的。請注意,通常情況下,只有在 aria-roledescription 在盲文渲染時過於冗長的情況下,才應在極少數情況下使用 aria-brailleroledescription。
示例
以下示例顯示了 aria-roledescription 的用法,用於指示一個非互動式容器是基於 Web 的演示應用程式中的一個“幻燈片”。
<div
role="article"
aria-roledescription="slide"
id="slide"
aria-labelledby="slideheading">
<h1 id="slideheading">Quarterly Report</h1>
<!-- remaining slide contents -->
</div>
在之前的示例中,螢幕閱讀器使用者可能會聽到“季度報告,幻燈片”,而不是不太精確的“季度報告,文章”。
值
<string>-
一個非空字串,一個不受約束的值型別,包含的不僅僅是空白字元。
相關介面
Element.ariaRoleDescription-
Element介面的一部分屬性反映了ariaRoleDescriptionaria-roledescription屬性的值。 ElementInternals.ariaRoleDescription-
ElementInternals介面的一部分屬性反映了ariaRoleDescriptionaria-roledescription屬性的值。
相關角色
被所有角色和所有基礎標記元素支援,但 role="generic" 除外。
規範
| 規範 |
|---|
| 無障礙富網際網路應用程式 (WAI-ARIA) # aria-roledescription |