ARIA: option-Rolle
Die option-Rolle wird für auswählbare Elemente in einer listbox verwendet.
Beschreibung
Die option-Rolle wird verwendet, um die Auswahlmöglichkeiten zu identifizieren, die ein Benutzer in einer listbox treffen kann. Diese Optionen ähneln den <option>-Elementen in einem <select>-Element, können jedoch Bilder enthalten.
Alle auswählbaren Optionen sollten aria-selected entsprechend ihrem Zustand haben, true, wenn ausgewählt, und false, wenn nicht ausgewählt. Wenn eine Option nicht auswählbar ist, kann aria-selected weggelassen werden. Eine deaktivierte Option kann aria-disabled="true" und aria-selected="false" haben, um dem Benutzer mitzuteilen, dass die Option zwar vorhanden, aber deaktiviert ist.
Die option-Rolle dient zur Identifizierung auswählbarer Auswahlmöglichkeiten einer listbox. Optionen müssen einen zugänglichen Namen haben. Im Allgemeinen sollte der zugängliche Name für eine Option aus dem Inhalt der Nachfahren des Elements stammen.
Autoren können auch explizit einen zugänglichen Namen angeben, indem sie aria-label oder aria-labelledby für das Element mit der option-Rolle angeben. Wenn aria-label oder aria-labelledby verwendet wird und die Option auch ein sichtbares Textetikett anzeigt, müssen die Autoren sicherstellen, dass sie das WCAG-Erfolgskriterium 2.5.3 Label in Name einhalten.
Es wird dringend empfohlen, wenn möglich ein <select>-Element oder ein <input>-Element mit dem Typ checkbox oder radio zu verwenden. Diese nativen HTML-Elemente bieten eine Tastaturinteraktivität, um den Fokus für alle Nachfahren automatisch zu verwalten.
Alle Nachfahren sind präsentational
Es gibt einige Arten von Benutzeroberflächenkomponenten, die, wenn sie in einer Plattform-Zugänglichkeits-API dargestellt werden, nur Text enthalten können. Zugänglichkeits-APIs haben keine Möglichkeit, semantische Elemente darzustellen, die in einer option enthalten sind. Um mit dieser Einschränkung umzugehen, wenden Browser automatisch die Rolle presentation auf alle Nachfahrenelemente eines option-Elements an, da es sich um eine Rolle handelt, die keine semantischen Kinder unterstützt.
Betrachten Sie zum Beispiel das folgende option-Element, das eine Überschrift enthält.
<div role="option"><h3>Title of my option</h3></div>
Da Nachfahren von option präsentational sind, ist der folgende Code gleichwertig:
<div role="option"><h3 role="presentation">Title of my option</h3></div>
Aus der Perspektive der Benutzer assistiver Technologien existiert die Überschrift nicht, da die vorherigen Code-Snippets im Zugänglichkeitstree dem folgenden entsprechen:
<div role="option">Title of my option</div>
Zugehörige ARIA-Rollen, Zustände und Eigenschaften
Zugehörige Rollen
listbox-
Eine
optionmuss in einerlistboxenthalten oder von ihr besitzt sein.
Zustände und Eigenschaften
aria-selected-
Wird verwendet, um den Auswahlzustand der Option zu beschreiben. Erforderlich.
aria-checked-
Wird verwendet, um den aktivierten Zustand zu beschreiben, wenn Optionen in einem Mehrfachauswahlmodus verwendet werden. Unterstützt
true,falseundmixed. Optional. aria-posinset-
Wird verwendet, um die Position im Satz der Optionen zu beschreiben, wenn sie nicht mit dem DOM übereinstimmt, wie z.B. beim virtuellen Scrollen, wo nur einige Optionen gleichzeitig vorhanden sind. Optional.
aria-setsize-
Wird zusammen mit
aria-posinsetverwendet, um die Gesamtzahl der Optionen anzugeben. Optional. aria-disabled-
Wird verwendet, um anzuzeigen, dass die Option vorhanden, aber nicht bearbeitbar ist. Optional.
-
Wird verwendet, um die Option vor Zugänglichkeitstools zu verbergen. Es sollte nur verwendet werden, um nicht sichtbaren Inhalt oder sichtbaren Inhalt zu verbergen, wenn dies die Erfahrung mit assistierender Technologie verbessert, z.B. redundanter Inhalt. Optional.
aria-invalid-
Wird verwendet, um anzuzeigen, dass der Wert der Option von der Anwendung als ungültig betrachtet wird. Optional.
aria-busy-
Wird verwendet, um anzuzeigen, dass ein Element geändert wird, z.B. während es geladen wird. Optional.
aria-labelledby-
Wird verwendet, um anzugeben, welches Element die Option etikettiert. Der Inhalt der Option sollte stattdessen verwendet werden, wenn dies angebracht ist. Optional.
aria-label-
Wird verwendet, um die Option zu etikettieren. Wenn das Etikett im DOM vorhanden ist, sollte
aria-labelledbystattdessen verwendet werden. Optional.
Spezifikationen
| Specification |
|---|
| Accessible Rich Internet Applications (WAI-ARIA)> # option> |
| Unknown specification> |
Siehe auch
- HTML
<select>-Element - HTML
<label>-Element - HTML
<option>-Element - ARIA:
combobox-Rolle - ARIA:
list-Rolle - ARIA:
listbox-Rolle