- Poziom
- A
- Od wersji
- WCAG 2.0
2.3.1 Trzy błyski lub wartości poniżej progu
Nic na stronie nie może błyskać częściej niż trzy razy w ciągu sekundy, chyba że błyski są na tyle małe i słabe, że mieszczą się poniżej progów błysku ogólnego i czerwonego.
/ Czego wymaga
Błyski o określonej częstotliwości mogą wywołać napad u osób z padaczką fotogenną i innymi zaburzeniami napadowymi wywoływanymi światłem, a najgroźniejsze są błyski nasyconej czerwieni. Inaczej niż w większości kryteriów nie da się tego załatwić kontrolką dla użytkownika: napad może zacząć się, zanim ktokolwiek dotrze do przycisku pauzy. Dlatego WCAG zalicza to kryterium do czterech, które obejmują całą treść strony, i dlatego błyski trzeba usunąć u źródła, w filmie, animowanym obrazie albo skrypcie.
Treść spełnia kryterium, jeśli nic nie błyska częściej niż trzy razy w dowolnej sekundzie albo jeśli błyski mieszczą się poniżej progu błysku ogólnego i błysku czerwonego. Błysk ogólny to para przeciwnych zmian luminancji względnej o co najmniej 10 procent wartości maksymalnej, przy czym ciemniejszy stan ma luminancję poniżej 0,80. Błysk czerwony to para przeciwnych przejść z udziałem nasyconej czerwieni. Błyski są też poniżej progu, gdy łączny obszar błyskający jednocześnie zajmuje nie więcej niż 25 procent dowolnego pola widzenia o kącie 10 stopni, które W3C szacuje jako prostokąt 341 na 256 pikseli na ekranie 1024 na 768. Drobny, zrównoważony wzór, taki jak biały szum, się nie liczy.
/ Jak strony go nie spełniają
- Wideo w nagłówku strony przeskakuje między jasnymi i ciemnymi ujęciami albo pokazuje stroboskop lub błyskawice częściej niż trzy razy na sekundę na dużej części ekranu.
- Animowany baner GIF kilka razy na sekundę zmienia klatkę białą na klatkę nasyconej czerwieni.
- Alert używa animacji CSS, która co 100 milisekund przełącza tło dużego bloku między czernią a bielą.
- Gra w przeglądarce albo efekt na elemencie canvas wypełnia ekran szybkimi błyskami eksplozji.
- Ekran ładowania albo błędu sprawia, że cały widok pulsuje między jasnym a ciemnym kilka razy na sekundę.
/ Jak sprawdzić samodzielnie
- Wypisz wszystko, co szybko się zmienia: wideo, animowane obrazy GIF, APNG i WebP, animacje CSS i canvas, efekty w grach i odtwarzaczach. Osoba wrażliwa na błyski powinna zostawić oglądanie komuś innemu albo narzędziu.
- Policz zmiany w dowolnej sekundzie. Jeśli nic nie błyska częściej niż trzy razy na sekundę, treść spełnia kryterium bez dalszej analizy.
- Przy wszystkim, co jest szybsze, oceń wielkość obszaru błysku wobec ćwiartki prostokąta 341 na 256 pikseli przy ekranie 1024 na 768, bo mały obszar może jeszcze przejść.
- Przepuść wideo i nagrania ekranu przez darmowe narzędzie do analizy, na przykład PEAT (Photosensitive Epilepsy Analysis Tool) z Trace Center, które porównuje nagrania z progami błysku.
- Sprawdzaj wideo w największym rozmiarze, w jakim użytkownik może je oglądać, zwykle na pełnym ekranie, a krótkie animacje analizuj w pętli, jak zaleca W3C.
/ Jak to naprawić
- Zmontuj wideo tak, żeby żaden jasny ani nasycony czerwony błysk nie powtarzał się częściej niż trzy razy w dowolnej sekundzie, na przykład zwalniając albo wycinając sekwencje stroboskopowe.
- Tam, gdzie jakiś błysk musi zostać, ogranicz go do małej części kadru, wyraźnie poniżej progu powierzchni.
- Zwolnij animacje CSS, które zmieniają jasność, tak żeby każdy pełny cykl trwał dłużej niż jedną trzecią sekundy, i unikaj przejść do nasyconej czerwieni i z niej.
- Obejmij efekty ruchu i błysków regułą @media (prefers-reduced-motion: no-preference), żeby nie uruchamiały się u osób, które poprosiły o mniej ruchu. To pomaga, ale treść i tak musi być poniżej progów dla wszystkich.
- Wymień materiał lub animację firmy trzeciej, która błyska, a której nie da się zmontować. Ostrzeżenie ani przycisk pauzy nie spełniają tego kryterium.
/ Co sprawdza nasz skaner
Żaden test automatyczny w naszym skanie nie obejmuje 2.3.1. Pomiar błysków wymaga nagrania strony w czasie i liczenia zmian luminancji na danym obszarze, a skan patrzy na stronę w jednej chwili. HTML_CodeSniffer podaje tu tylko przypomnienie, które jest pomijane. W audycie ręcznym człowiek przegląda wideo, animowane obrazy i efekty na canvas, a wszystko, co budzi wątpliwości, przepuszcza przez narzędzie do analizy klatek.
/ Kto je łamie, według naszych pomiarów
Cotygodniowy indeks nie ma danych dla tego kryterium, bo żaden test uruchamiany przez skan witryny go nie sprawdza. Ocenia je człowiek i do tego służy audyt ręczny.
Jedna strona na podmiot, mierzona automatycznie w tygodniowym cyklu. Jeśli podmiot coś naprawił od ostatniego pomiaru, zmiana będzie widoczna przy następnym, a każdy podmiot może odpowiedzieć na swojej stronie.
/ Pytania o to kryterium
Czy ostrzeżenie przed migającą treścią wystarcza, by spełnić 2.3.1?
Nie. Kryterium nie ma wyjątku dla ostrzeżeń ani kontrolek, bo napad może zacząć się, zanim użytkownik zdąży zareagować. Treść albo mieści się w trzech błyskach na sekundę, albo poniżej progów błysku, albo narusza kryterium. Ostrzeżenie to nadal uprzejmość wobec osób, które reagują na błyski poniżej progu, ale nie zmienia wyniku.
Czym różni się 2.3.1 od 2.3.2?
2.3.1 Trzy błyski lub wartości poniżej progu należy do poziomu A i dopuszcza błyski, gdy są na tyle małe lub słabe, że mieszczą się poniżej progów błysku ogólnego i czerwonego. 2.3.2 Trzy błyski to poziom AAA i usuwa tę ulgę: nic nie może błyskać częściej niż trzy razy w dowolnej sekundzie, bez względu na wielkość i jasność.
Czy migający tekst podlega 2.3.1?
Zwykle podlega kryterium 2.2.2 Pauza, zatrzymanie, ukrycie. W3C oddziela miganie, które rozprasza i może trwać krótko, jeśli się kończy albo da się je zatrzymać, od błysków, które mogą wywołać napad i są niedopuszczalne nawet przez sekundę. Miganie częstsze niż trzy razy na sekundę liczy się jako błysk i ocenia się je według 2.3.1.
