Przejdź do treści
SilktidePomoc

Nieprawidłowa rola ARIA

Silktide sprawdza każdy atrybut role na Twoich stronach względem listy ról definiowanych przez standard ARIA. Rola zawierająca literówkę, wymyślona, pusta lub zastrzeżona do użytku wewnętrznego jest po cichu ignorowana przez przeglądarki, więc zamierzone znaczenie elementu nigdy nie dociera do osób, które na nim polegają.

<!-- Problem: „buton” nie jest prawdziwą rolą, więc ten div pozostaje bez znaczenia -->
<div role="buton" tabindex="0">Zapisz</div>

<!-- Poprawka: użyj prawidłowej roli (albo lepiej — rzeczywistego elementu button) -->
<button>Zapisz</button>

Dlaczego to jest ważne

Rola informuje , czym jest element — przyciskiem, kartą, oknem dialogowym. Gdy rola jest nieprawidłowa, przeglądarki ją odrzucają: użytkownik słyszy zwykły tekst tam, gdzie autor zamierzał umieścić kontrolkę, i może w ogóle nie wiedzieć, że z elementem można wchodzić w interakcję. Ponieważ strona wygląda i działa normalnie dla widzących użytkowników myszy, błędy te pozostają niezauważone bez testowania.

Jak to naprawić

  1. Popraw literówki, aby rola odpowiadała rzeczywistej roli ARIA (pełna lista) — na przykład role="navigation", a nie role="nav".
  2. Zastąp role abstrakcyjne (widget, composite, landmark, section i podobne) konkretną rolą — role abstrakcyjne służą wyłącznie do organizacji standardu i nie mogą być używane na stronach.
  3. Usuń puste atrybuty role="".
  4. Jeśli natywny element ma właściwe znaczenie (<button>, <nav>, <main>), użyj go i całkowicie usuń atrybut role.

Jak Silktide to testuje

  1. Znajduje każdy element na stronie z atrybutem role.
  2. Zgłasza puste wartości ról.
  3. Sprawdza każde słowo w wartości roli względem ról zdefiniowanych przez ARIA 1.2. Akceptowane są role z rozszerzeń publikacji cyfrowych (doc-) i grafiki (graphics-).
  4. Zgłasza słowa, które nie odpowiadają żadnej zdefiniowanej roli, oraz słowa oznaczające rolę abstrakcyjną.

Rozwiązywanie problemów

Rola ma wiele słów

Atrybut roli może zawierać kilka ról zastępczych; przeglądarki używają pierwszej, którą rozpoznają. Silktide zgłasza każde nieprawidłowe lub abstrakcyjne słowo na liście, aby można było także uporządkować role zastępcze.

Dowiedz się więcej

Ostatnio zaktualizowano

Czy ta strona była pomocna?