Bez pułapki klawiaturowej
Jeśli fokus klawiatury może wejść do komponentu, musi też móc z niego wyjść za pomocą samej klawiatury. Główni winowajcy to okna modalne, osadzone obiekty i niestandardowe widżety.
Czego wymaga
Jeśli użytkownik może nawigować klawiszem Tab do komponentu, musi też móc z niego wyjść klawiszem Tab (lub Shift+Tab albo innym udokumentowanym klawiszem) bez sięgania po mysz. Jeśli wyjście wymaga czegoś innego niż standardowe klawisze Tab lub strzałki — na przykład Ctrl+M, aby opuścić osadzony odtwarzacz wideo — użytkownik musi zostać poinformowany, jak to zrobić.
Nie należy tego mylić z pułapką fokusa wewnątrz okna modalnego, która jest pożądanym wzorcem: okno modalne cyklicznie przesuwa fokus w swojym obrębie, ale zwalnia go po zamknięciu. Pułapka klawiaturowa to sytuacja, gdy nie istnieje żaden udokumentowany sposób wyjścia.
Jak spełnić kryterium
- W oknie dialogowym przenoś fokus cyklicznie między pierwszym a ostatnim elementem aktywnym za pomocą Tab i Shift+Tab, oraz zamykaj okno klawiszem Escape, przywracając fokus do elementu, który je wywołał.
- W przypadku osadzonej treści zewnętrznej (odtwarzacze wideo, mapy, ramki iframe nieznanego pochodzenia) sprawdzaj, czy Tab przechodzi dalej po osadzonym elemencie. Jeśli nie — dokumentuj skrót klawiszowy wyjścia w pobliżu tego elementu.
- W niestandardowych widżetach przechwytujących klawisze strzałek (selektory dat, combobox, widoki drzewiaste) zachowaj Tab jako uniwersalny klawisz wyjścia — nigdy go nie blokuj.
- W edytorach używających Tab do wcięć lub uchwytach przeciągania zapewnij udokumentowaną alternatywę (Escape do wyjścia, Ctrl+M do opuszczenia trybu edycji) i wyświetlaj ją w interfejsie.
Typowe błędy
- Okna dialogowe, które wychwytują fokus, lecz nie zamykają się klawiszem Escape i nie udostępniają aktywnego przycisku „Zamknij”.
- Osadzone przeglądarki PDF, relikty Flash oraz niektóre panele Tableau / Power BI bezterminowo pochłaniające naciśnięcia Tab.
- Edytory tekstu sformatowanego (TinyMCE, starsze wersje CKEditor), w których Tab służy do wcięć i nigdy nie zwalnia fokusa.
- Niestandardowe combobox, w których klawisze strzałek poruszają się po opcjach, ale Tab nic nie robi — użytkownik utyka w polu wejściowym.
- Banery cookies z zarządzaniem fokusem zapętlającym się bez możliwości dotarcia do przycisków „Akceptuj” / „Odrzuć”.
Zautomatyzowane narzędzia rzadko wykrywają ten problem — axe i Lighthouse mogą tylko sygnalizować podejrzane wzorce. Jedynym wiarygodnym sposobem weryfikacji są manualne testy klawiaturowe.
Dlaczego to ważne
Pułapka klawiaturowa to jedno z najpoważniejszych naruszeń dostępności: użytkownik dosłownie nie może opuścić danej części strony. Niewidomy użytkownik może być zmuszony do odświeżenia strony, tracąc sesję i wszelkie wprowadzone dane. Dla wielu jest to moment porzucenia witryny na zawsze. Spośród wszystkich kryteriów WCAG, to właśnie to najczęściej sprawia, że strona staje się prawnie nieuzasadniona — sądy i organy nadzorcze traktują uwięzienie użytkowników jako oczywistą barierę.