2.2.1 Dostosowanie czasu - poziom A
To kryterium dotyczy sytuacji, gdy na stronie lub w aplikacji użytkownik ma ograniczony czas na wykonanie jakiejś czynności. WCAG wymaga, żeby użytkownik mógł dostosować ten czas.
O co tu chodzi w praktyce?
Jeśli użytkownik wypełnia formularz, robi zakup, rejestruje się, zapisuje na wydarzenie, rozwiązuje test, korzysta z panelu, a system po jakimś czasie go wylogowuje albo kasuje postęp, to część osób może nie zdążyć.
WCAG nie mówi, że nie wolno mieć limitów czasu. Mówi, że jeśli już są, to użytkownik musi mieć możliwość ich wyłączenia, zmiany albo przedłużenia.
Najczęstsze powody niespełnienia kryterium 2.2.1
Brak ostrzeżenia przed końcem czasu.
Użytkownik dowiaduje się o limicie dopiero wtedy, gdy sesja wygasła, formularz się wyzerował albo system go wylogował. A wtedy jest już za późno na wydłużenie czasu.
Ograniczenie czasu jest, ale nie ma nad nim kontroli.
Nie da się go wyłączyć, nie da się wydłużyć, nie da się dostosować. Limit działa jak kara za wolniejsze tempo pracy.
Mechanizm przedłużenia jest tylko teoretycznie.
Na przykład komunikat pojawia się na kilka sekund, znika, nie da się go obsłużyć klawiaturą albo jest schowany w miejscu, którego użytkownik nie zauważy w trakcie wykonywania zadania. W efekcie możliwość wydłużenia istnieje na papierze, ale nie w praktyce.
Nadużywanie wyjątku „niezbędne” lub „czas rzeczywisty”.
WCAG dopuszcza wyjątki, ale nie po to, żeby usprawiedliwiać zwykłe formularze, koszyki czy panele, gdzie da się bez problemu dodać ostrzeżenie i opcję kontynuacji.
Jak spełnić kryterium sukcesu 2.2.1 Dostosowanie czasu?
Najbezpieczniejszym rozwiązaniem jest zapewnienie możliwości wydłużenia czasu. Jeśli masz sesję, która wygasa (panel, e-usługa, formularz wieloetapowy), wdroż okno/komunikat, które pojawia się przed końcem czasu i daje prostą opcję: Kontynuuj sesję / Wydłuż czas.
Zadbaj także, żeby ostrzeżenie pojawiało się z wyprzedzeniem i było „nie do przeoczenia”. Ostrzeżenie ma pojawić się na tyle wcześnie, żeby użytkownik miał realną szansę zareagować. Unikaj komunikatów, które wyskakują na 3 sekundy i znikają, bo wtedy możliwość wydłużenia czasu jest tylko formalna.
Wskazówka: najlepiej jeśli komunikat zostaje na ekranie, dopóki użytkownik nie wybierze opcji
Innym rozwiązaniem jest nie kasowanie postępu po upływie czasu. Jeżeli limit czasu jednak zadziała i przerwie proces, postaraj się nie karać użytkownika utratą danych. To nie jest jedyny sposób spełnienia 2.2.1, ale w praktyce bardzo wzmacnia dostępność: użytkownik wraca i kontynuuje, zamiast zaczynać od zera.
Dopilnuj dostępności samego mechanizmu. - To szalenie ważne! - Mechanizm przedłużenia/ustawienia limitu musi być: obsługiwalny klawiaturą, czytelny i możliwy do uruchomienia bez presji „znikającego okna”.
Pełny tekst kryterium 2.2.1 Dostosowanie czasu
Gdy czas korzystania z treści jest ograniczany, spełniony jest przynajmniej jeden z poniższych warunków:
- Wyłączenie - Użytkownik może wyłączyć limit czasowy, zanim czas upłynie; lub
- Dostosowanie - Użytkownik może swobodnie dostosować limit czasowy (przynajmniej o wartość 10 razy większą od wartości domyślnej), zanim czas upłynie; lub
- Wydłużenie - Użytkownik jest ostrzegany przed upłynięciem limitu czasowego i ma przynajmniej 20 sekund na wydłużenie limitu za pomocą prostej czynności (np. „wciśnij klawisz spacji”) oraz może wydłużyć limit przynajmniej dziesięciokrotnie; lub
- Wyjątek dotyczący czasu rzeczywistego - Limit czasowy jest wymaganym komponentem jakiejś czynności w czasie rzeczywistym (np. aukcji) i nie ma możliwości zmiany limitu; lub
- Wyjątek dotyczący istoty czynności - Limit czasowy jest istotny i wydłużenie go anulowałoby lub zaburzałoby daną czynność; lub
- Wyjątek 20 godzin - Limit czasowy przekracza 20 godzin.
Źródło: https://www.w3.org/Translations/WCAG21-pl/#dostosowanie-czasu
Chcesz wiedzieć więcej?
- 2.1.1 Klawiatura - poziom A
- 2.1.2 Brak pułapki na klawiaturę - poziom A
- 2.1.3 Klawiatura (bez wyjątków) - poziom AAA
- 2.1.4 Jednoznakowe skróty klawiaturowe - poziom A
- 2.2.2 Pauza, zatrzymanie, ukrycie - poziom A
- 2.2.3 Brak czasu - poziom AAA
- 2.2.4 Przerywanie - poziom AAA
- 2.2.6 Ostrzeżenie o limicie czasu - poziom AAA
- 2.3.1 Trzy błyski lub wartości poniżej progu - poziom A
- 2.3.2 Trzy błyski - poziom AAA
- 2.3.3 Animacja po interakcji (Poziom AAA)
- 2.4.1 Możliwość pominięcia bloków - poziom A
- 2.4.2 Tytuł strony - poziom A
- 2.4.3 Kolejność fokusu - poziom A
- 2.4.4 Cel łącza (w kontekście) - poziom A
- 2.4.5 Wiele dróg - poziom AA
- 2.4.6 Nagłówki i etykiety - poziom AA
- 2.4.7 Widoczny fokus - poziom AA
- 2.4.8 Lokalizacja - poziom AAA
- 2.4.9 Cel łącza (z samego łącza) - poziom AAA
- 2.4.10 Nagłówki sekcji - poziom AAA
- 2.5.1 Gesty wskazujące - poziom A
- 2.5.2 Rezygnacja ze wskazania - poziom A
- 2.5.3 Etykieta w nazwie - poziom A
- 2.5.4 Aktywowanie ruchem - poziom A
- 2.5.5 Rozmiar celu - poziom AAA
- 2.5.6 Równoległy mechanizm wprowadzania danych - poziom AAA