WCAG 3.3.2: Etykiety lub instrukcje
Wprowadzenie do WCAG 3.3.2: Etykiety lub instrukcje
Kryterium sukcesu WCAG 3.3.2, zatytułowane „Etykiety lub instrukcje”, jest fundamentalnym elementem zapewniającym dostępność interaktywnych treści internetowych, zwłaszcza formularzy. Jego głównym celem jest gwarancja, że każdy użytkownik, niezależnie od swoich zdolności, będzie w stanie zrozumieć, jakie dane powinien wprowadzić w pola formularza.
Zgodnie z WCAG 2.0 i 2.1 na poziomie dostępności A, kryterium to stanowi, że „Gdy wymagane jest wprowadzenie danych, należy podać etykiety lub instrukcje”. Oznacza to, że każde pole, w którym użytkownik ma wprowadzić informacje (tekst, wybrać opcję itp.), musi być jasno opisane lub opatrzone instrukcją, która precyzyjnie informuje o jego przeznaczeniu.
Spełnienie tego kryterium jest kluczowe dla użyteczności i dostępności, ponieważ pozwala użytkownikom efektywnie wchodzić w interakcje z witryną, minimalizując błędy i frustrację.
Dlaczego WCAG 3.3.2 jest ważne? (Wpływ na dostępność)
Zapewnienie odpowiednich etykiet i instrukcji w formularzach ma ogromny wpływ na dostępność i użyteczność witryn internetowych dla szerokiego grona użytkowników:
Wymagania kryterium sukcesu WCAG 3.3.2
Kryterium sukcesu 3.3.2, „Etykiety lub instrukcje”, jest na poziomie A, co oznacza, że jest to podstawowy wymóg dostępności. Jego pełne brzmienie to: „Gdy wymagane jest wprowadzenie danych, należy podać etykiety lub instrukcje.”
Co to oznacza w praktyce?
Kluczowe jest, by relacja między etykietą/instrukcją a kontrolką formularza była opisana w kodzie w sposób czytelny dla technologii wspomagających.
Jak spełnić kryterium WCAG 3.3.2? (Praktyczne wskazówki)
Aby spełnić kryterium 3.3.2, należy zastosować następujące praktyki:
1. Używaj elementu <label> z atrybutem for
To podstawowy i najbardziej efektywny sposób programowego powiązania etykiety z polem formularza. Atrybut for w <label> musi odpowiadać atrybutowi id pola wejściowego.
2. Grupuj powiązane kontrolki za pomocą <fieldset> i <legend>
Dla grup pól wyboru (np. radio buttonów, checkboxów), element <fieldset> z <legend> zapewnia ogólną etykietę dla całej grupy, co jest kluczowe dla zrozumienia kontekstu przez użytkowników czytników ekranu.
3. Zapewnij instrukcje dla złożonych lub nietypowych pól
Jeśli format danych jest specyficzny lub pole wymaga określonego typu danych, dostarcz dodatkowe instrukcje. Mogą to być wskazówki dotyczące formatu daty, wymagań dotyczących hasła, limitu znaków itp. Te instrukcje powinny być umieszczone w widocznym miejscu, najlepiej tuż przed lub za polem.
4. Nie polegaj wyłącznie na tekście zastępczym (placeholder)
Tekst zastępczy (atrybut placeholder) znika po rozpoczęciu wpisywania danych i nie jest programowo dostępny dla wszystkich technologii wspomagających jako etykieta. Może służyć jako dodatkowa wskazówka lub przykład, ale nigdy nie zastępuje właściwej etykiety.
5. Używaj atrybutów WAI-ARIA (w razie potrzeby)
W przypadku niestandardowych kontrolek formularza lub scenariuszy, gdzie natywne elementy HTML nie są wystarczające, użyj atrybutów WAI-ARIA, takich jak aria-label lub aria-labelledby, aby dostarczyć programową etykietę.
6. Zapewnij, że etykiety są zawsze widoczne
Etykiety nie powinny być ukrywane wizualnie za pomocą CSS (np. display: none;, visibility: hidden;), chyba że są dostarczane alternatywnymi metodami (np. aria-label), które zapewniają ich dostępność programową. Jeśli etykieta jest wizualnie ukryta, ale ma być dostępna dla czytników ekranu, należy użyć klasy CSS, która wizualnie ją ukrywa, ale pozostawia dostępną dla technologii wspomagających (np. .visually-hidden).
Przykłady implementacji
Poprawna implementacja
Proste pole tekstowe z etykietą
Grupa radio buttonów z fieldset i legend
Pole tekstowe z dodatkową instrukcją
Przycisk wyszukiwania bez widocznej etykiety, ale z aria-label
Niepoprawna implementacja
Brak etykiety, poleganie na placeholder
Użytkownicy czytników ekranu nie otrzymają kontekstu, a placeholder zniknie po rozpoczęciu wpisywania.
Etykieta wizualna, ale bez powiązania programowego
Tekst „Nazwisko” jest widoczny, ale nie jest programowo powiązany z polem, więc czytniki ekranu nie odczytają go jako etykiety dla <input>.
Ukryta etykieta bez alternatywnej dostępnej programowo etykiety
Poniższy kod ukrywa etykietę całkowicie, przez co jest niedostępna zarówno wizualnie, jak i dla czytników ekranu.
Najlepsze praktyki i typowe błędy
Najlepsze praktyki:
Typowe błędy:
Podsumowanie
Kryterium WCAG 3.3.2 „Etykiety lub instrukcje” jest kluczowe dla stworzenia inkluzywnych i użytecznych formularzy internetowych. Poprawne stosowanie etykiet i instrukcji nie tylko spełnia wymagania dostępności, ale także poprawia doświadczenie użytkownika dla każdego. Pamiętając o programowym powiązaniu etykiet z polami, zapewnieniu jasnych instrukcji oraz unikaniu powszechnych błędów, możemy tworzyć interaktywne treści dostępne dla wszystkich.
Powiązane wpisy
- WCAG 5.2.3: Pełne procesy
- WCAG 5.2.4: Tylko sposoby korzystania z technologii wspierające dostępność
- WCAG 5.2.5: Brak zakłóceń
- WCAG 5.3.1: Wymagane elementy oświadczenia o zgodności
- WCAG 5.3.2: Opcjonalne elementy oświadczenia o zgodności
Nadal szukasz odpowiedzi?
Zapytaj naszych specjalistów używając czatu online.