Objaśnienie KS 2.4.3:Kolejność fokusu (Poziom A)
W skrócie
- Cel
- Użytkownicy klawiatury poruszają się po treściach w prawidłowej kolejności
- Zadanie autora
- Elementy otrzymują fokus w kolejności, która zachowuje znaczenie
- Dlaczego to jest ważne
- Poruszanie się po witrynie lub aplikacji za pomocą samej klawiatury będzie miało sens.
Intencja
Intencją tego kryterium sukcesu jest zapewnienie, że użytkownicy poruszający się po treści sekwencyjnie napotkają informacje w kolejności zgodnej ze znaczeniem treści i umożliwiającej obsługę za pomocą klawiatury. Zmniejsza to zamieszanie, umożliwiając użytkownikom utworzenie spójnego mentalnego modelu treści. Mogą istnieć różne porządki, które odzwierciedlają logiczne relacje w treści. Na przykład poruszanie się po komponentach tabeli po wierszu lub po kolumnie odzwierciedla logiczne relacje w treści. Każdy z tych porządków może spełnić to kryterium sukcesu.
Sposób, w jaki ustalana jest kolejność nawigacji sekwencyjnej w treściach internetowych,
jest definiowany przez technologię treści. Na przykład prosty HTML definiuje nawigację
sekwencyjną poprzez pojęcie kolejności tabulacji. Dynamiczny HTML może modyfikować
sekwencję nawigacji za pomocą skryptów wraz z dodatkiem atrybutu tabindex, aby umożliwić
ustawienie fokusu na dodatkowych elementach. Jeśli nie są używane żadne atrybuty skryptowe
ani tabindex
, kolejność nawigacji to kolejność, w jakiej komponenty pojawiają się w strumieniu
treści. (Zobacz specyfikację HTML 4.01, sekcja 17.11, „Przydzielanie elementowi fokusu”).
Przykładem nawigacji za pomocą klawiatury, która nie jest nawigacją sekwencyjną, o której mowa w tym kryterium sukcesu, jest używanie nawigacji za pomocą klawiszy strzałek do poruszania się po komponencie drzewa. Użytkownik może używać klawiszy strzałek w górę i w dół, aby przechodzić od węzła drzewa do węzła drzewa. Naciśnięcie klawisza strzałki w prawo może rozwinąć węzeł, a następnie użycie klawisza strzałki w dół spowoduje przejście do nowo rozwiniętych węzłów. Ta sekwencja nawigacji jest zgodna z oczekiwaną sekwencją kontrolki drzewa — w miarę rozwijania lub zwijania dodatkowych elementów są one dodawane lub usuwane z sekwencji nawigacji.
Kolejność fokusu może nie być identyczna z ustaloną programowo kolejnością czytania (zobacz Kryterium sukcesu 1.3.2), o ile użytkownik nadal może zrozumieć i obsługiwać stronę internetową. Ponieważ może istnieć kilka możliwych logicznych kolejności czytania treści, kolejność fokusu może odpowiadać dowolnej z nich. Jeśli jednak kolejność konkretnej prezentacji różni się od ustalonej programowo kolejności czytania, użytkownicy jednej z tych prezentacji mogą mieć trudności ze zrozumieniem lub obsługą strony internetowej. Autorzy powinni podczas projektowania swoich stron internetowych dokładnie rozważyć potrzeby wszystkich tych użytkowników.
Na przykład użytkownik czytnika ekranu wchodzi w interakcję z programowo określoną kolejnością czytania, podczas gdy widzący użytkownik klawiatury wchodzą w interakcję z wizualną prezentacją strony internetowej. Należy zadbać o to, aby kolejność działań była zrozumiała dla obu grup użytkowników i nie sprawiała wrażenia, że którakolwiek z nich zmienia się losowo.
Dla jasności:
- Komponenty, na których można ustawić fokus, muszą otrzymywać fokus w kolejności, która zachowuje znaczenie i funkcjonalność tylko wtedy, gdy sekwencje nawigacji wpływają na znaczenie i funkcjonalność.
- W przypadkach, gdy jest to wymagane, może istnieć więcej niż jedna kolejność, która zachowa znaczenie i funkcjonalność.
- Jeśli istnieje więcej niż jedna kolejność, która zachowuje znaczenie i funkcjonalność, należy podać tylko jedno z nich.
Korzyści
Techniki te są korzystne dla użytkowników klawiatury, którzy nawigują po dokumentach sekwencyjnie i oczekują, że kolejność zaznaczania będzie zgodna z kolejnością czytania sekwencyjnego.
- Osoby z niepełnosprawnością manualną, które do obsługi strony muszą korzystać z klawiatury, korzystają z logicznej i użytecznej kolejności fokusu.
- Osoby z niepełnosprawnościami utrudniającymi czytanie mogą być zdezorientowane, gdy naciśnięcie tabulatora ustawi fokus w nieoczekiwanym miejscu. Korzystają oni z logicznej kolejności fokusu.
- Osoby z wadą wzroku mogą stracić orientację, gdy naciśnięcie klawisza Tab przeniesie fokus w nieoczekiwane miejsce lub gdy nie będą mogły łatwo znaleźć treści otaczających element interaktywny.
- Tylko niewielka część strony może być widoczna dla osoby korzystającej z lupy ekranowej przy dużym powiększeniu. Taki użytkownik może zinterpretować pole w niewłaściwym kontekście, jeśli kolejność fokusu nie jest logiczna.
Przykłady
- Na stronie internetowej zawierającej drzewo interaktywnych elementów sterujących użytkownik może używać klawiszy strzałek w górę i w dół, aby przechodzić od węzła drzewa do węzła drzewa. Naciśnięcie klawisza strzałki w prawo rozwija węzeł, a następnie klawiszem strzałki w dół przechodzi do nowo rozwiniętych węzłów.
- Strona internetowa implementuje niemodalne okna dialogowe za pomocą skryptów. Po aktywowaniu przycisku wyzwalacza otwiera się okno dialogowe. Elementy interaktywne w oknie dialogowym wstawiane są w kolejności fokusu bezpośrednio po przycisku. Gdy okno dialogowe jest otwarte, fokus przechodzi od przycisku do elementów okna dialogowego, a następnie do elementu interaktywnego znajdującego się za przyciskiem. Kiedy okno dialogowe jest zamknięte, fokus przechodzi od przycisku do następnego elementu interaktywnego.
- Strona internetowa implementuje modalne okna dialogowe za pomocą skryptów. Po aktywowaniu przycisku wyzwalacza otwiera się okno dialogowe, w którym ustawiany jest fokus. Dopóki okno dialogowe jest otwarte, fokus jest ustawiany na elementach okna dialogowego. Po zamknięciu okna dialogowego fokus powraca do przycisku lub elementu następującego po przycisku.
-
Strona internetowa HTML jest tworzona z nawigacją po lewej stronie występującą w kodzie HTML po głównej treści i stylizowana za pomocą CSS tak, aby pojawiała się po lewej stronie strony. Ma to na celu umożliwienie ustawienia fokusu najpierw na głównej treści bez konieczności stosowania atrybutów tabIndex lub JavaScript.
Uwaga
Choć ten przykład spełnia kryterium sukcesu, niekoniecznie jest prawdą, że każde pozycjonowanie CSS spełniałoby takie kryteria. Bardziej złożone przykłady pozycjonowania mogą, ale nie muszą, zachować znaczenie i funkcjonalność
-
Poniższy przykład nie spełnia kryterium sukcesu:
Na stronie internetowej firmy znajduje się formularz, który zbiera dane marketingowe i umożliwia użytkownikom subskrypcję kilku biuletynów publikowanych przez firmę. Sekcja formularza służąca do zbierania danych marketingowych zawiera pola takie jak imię i nazwisko, adres, miasto, stan lub województwo oraz kod pocztowy. Kolejna część formularza zawiera kilka pól wyboru, dzięki którym użytkownicy mogą wskazać biuletyny, które chcą otrzymywać. Jednak kolejność fokusu formularza jest przeskakiwana pomiędzy polami w różnych sekcjach formularza, w związku z czym fokus przenosi się z pola nazwy do pola wyboru, następnie do adresu ulicy, a następnie do innego pola wyboru.
Techniki
Każdy numerowany element w tej sekcji reprezentuje technikę lub kombinację technik, które Grupa Robocza WCAG uważa za wystarczające do spełnienia tego kryterium sukcesu. Nie jest jednak konieczne stosowanie tych konkretnych technik. Aby uzyskać informacje na temat stosowania innych technik, zobacz Objaśnienie technik dla kryteriów sukcesu WCAG, szczególnie w sekcji „Inne techniki”.
Techniki wystarczające
- G59: Umieszczanie elementów interaktywnych w kolejności podążającej za sekwencjami i relacjami w obrębie treści
-
Ustawianie fokusu na elementach w kolejności sekwencyjnej i zgodnej z relacjami w obrębie treści za pomocą jednej z następujących technik
-
Dynamiczne zmiany treści strony za pomocą jednej z następujących technik:
Błędy
Poniżej wymieniono typowe błędy, które Grupa Robocza WCAG uważa za niespełnienie tego kryterium sukcesu.
- F44: Niespełnienie kryterium sukcesu 2.4.3 z powodu użycia tabindex do utworzenia kolejności tabulacji, która nie zachowuje znaczenia i funkcjonalności
- F85: Niespełnienie kryterium sukcesu 2.4.3 z powodu używania okien dialogowych lub menu, które nie sąsiadują z ich kontrolą wyzwalania w kolejności sekwencyjnej nawigacji
Kluczowe pojęcia
interfejs używany przez oprogramowanie do obsługi wciśnięć klawiszy
Uwaga
Interfejs klawiaturowy pozwala użytkownikowi na obsługę programów za pomocą klawiatury nawet wówczas, gdy dane urządzenie nie posiada klawiatury.
Uwaga
Operacje wykonywane w aplikacjach lub fragmentach aplikacji wykonywane za pomocą klawiszy symulujących mysz, np. klawisze myszy, nie są kwalifikowane jako wykonywane przez interfejs klawiaturowy, ponieważ operacje wykonywane są poprzez interfejs wskaźnika myszy, a nie klawiatury.
nawigowanie po stronie za pomocą interfejsu klawiaturowego w kolejności określonej dla przenoszenia fokusu
oprogramowanie umożliwiające pobieranie i przeglądanie treści internetowych
nieosadzony zasób uzyskany z pojedynczego identyfikatora URI za pomocą protokołu HTTP wraz z wszelkimi innymi zasobami użytymi do renderowania strony w programie użytkownika lub takimi, które potencjalnie mogą być użyte do renderowania
Uwaga
Mimo że każdy z „pozostałych zasobów” mógłby być renderowany razem z podstawowym zasobem, to niekoniecznie muszą być renderowane równocześnie.
Uwaga
W celu zgodności z niniejszymi wytycznymi, zasób nie może być „osadzony” w innym zasobie wchodzącym w zakres oceny zgodności, aby można go było uznać za stronę internetową.