Wstęp
Ten dokument został opracowany jako część zasobów towarzyszących wprowadzeniu wersji 4 ogólnego standardu poprawy dostępności (RGAA 4).
Przeznaczony jest dla każdego, kto zajmuje się weryfikacją zgodności treści internetowych z RGAA 4. Jest to metodologia testowania dokumentująca kroki weryfikacji, czy kryterium RGAA 4 są spełnione, czy nie.
Metodologię tę należy zatem traktować jako uzupełnienie technicznych ram odniesienia RGAA i nie można jej stosować samodzielnie. Nie zwalnia więc z dokładnej lektury repozytorium technicznego lub szkolenia w zakresie RGAA.
Dla każdego z testów danego kryterium istnieje odpowiednia procedura testowa; realizacja tej procedury może niekiedy wymagać użycia specjalnych narzędzi, w przeciwnym razie do przeprowadzenia większości testów wystarczy przeglądarka internetowa.
Podano również listę narzędzi pomocnych w przeprowadzeniu testów. Zostały wybrane zarówno dlatego, że są często używane przez ekspertów w tej dziedzinie, jak i dlatego, że ułatwiają uzyskanie określonych wyników.
Narzędzia
Najbardziej użytecznym narzędziem jest inspektor kodu, jaki oferuje każda przeglądarka. Pozwala w prosty sposób wyszukać elementy i atrybuty wymagane do testowania dostępności.
Pomoce techniczne wymienione w wybranym środowisku testowym stanowią drugi zestaw niezbędnych narzędzi (patrz sekcja Środowisko testowe). Są one w istocie wymagane do zapewnienia poprawnego renderowania dostępnych treści (alternatywy obrazów, nagłówki linków, nagłówki tabel itp.), szczególnie w przypadku, gdy gdy samo sprawdzenie kodu nie byłoby wystarczające.
Dostępne są inne narzędzia pomagające w wyszukiwaniu elementów treści. Są to często rozszerzenia przeglądarki. Pozwalają zbadać jednego lub więcej aspektów dostępności.
Paski narzędzi to rozszerzenia przeglądarki, które ułatwią wizualne zlokalizowanie określonych elementów w dokumencie:
- Web Accessibility Toolbar - dla Internet Explorer: pasek narzędzi do sprawdzania określonych punktów dostępności dokumentu.
- Web Developer Toolbar - dla Firefox: pasek narzędzi dla programistów, który może pomóc wizualnie znaleźć określone w dokumencie elementy w celu sprawdzenia ich dostępności.
- Web Developer Toolbar - dla Chrome: ten sam pasek narzędzi, co poprzednio, ale dla Chrome.
Poza prostym paskiem narzędzi inne narzędzia zapewniają pełną analizę dokumentu, sygnalizując wizualnie błędy dostępności na stronie lub odwrotnie - elementy, które są dla niej korzystne. Filtry często pozwalają wyświetlać tylko niektóre z tych aspektów. Właśnie to oferuje Wave - rozwiązanie dostępne zarówno internetowo, jak i jako [rozszerzenie przeglądarki] (https://wave.webaim.org/extension/).
Do sprawdzania poprawności kodu źródłowego dokumentu HTML wykorzystywany jest walidator W3C. Należy pamiętać, że do walidacji kodu źródłowego generowanego przez przeglądarkę, musisz użyć opcji Validate by Direct Input („Sprawdź poprawność przez bezpośrednie wprowadzanie”), kopiując źródło HTML generowane przez inspektora kodu przeglądarki.
Dostępne są również rozszerzenia do przeglądarek, ale w korzystaniu z nich należy zachować ostrożność, ponieważ algorytmy walidacji tych rozszerzeń niekoniecznie są aktualne w stosunku do walidatora W3C i dlatego uzyskane wyniki mogą być inne.
Weryfikacji kontrastów kolorów można dookonać za pomocą kilku różnych narzędzi:
- WCAG Contrast Checker: rozszerzenie Firefox, które umożliwia automatyczną kontrolę kontrastów kolorów tekstu w dokumencie ;
- Color Contrast Analyser: aplikacja dla systemu Windows lub Mac, która umożliwia kontrolę kontrastu kolorów.
Do weryfikacji drzewa dokumentu i hierarchii tytułów bardzo przydatnesą dwa rozszerzenia:
- HeadingsMap dla Firefoksa: rozszerzenie Firefoksa, które daje przegląd planu dokumentu i strukturę drzewa dokumentu.
- HeadingsMap dla Chrome: to samo rozszerzenie, co poprzednie dla Chrome.
Analizę plików biurowych można przeprowadzić przy użyciu różnych narzędzi w zależności od formatu pliku:
- PAC (PDF Accessibility Checker) wersja 3 dla Windows: oprogramowanie umożliwiające sprawdzenie określonych punktów dostępności dokumentów PDF;
- Word Accessibility Plug-in dla Microsoft Office Windows: rozszerzenie programu Microsoft Word, które umożliwia edycję i sprawdzanie dostępności edytowalnego dokumentu biurowego w formacie .doc; należy pamiętać, że ostatnie wersje narzędzi biurowych firmy Microsoft oferują wbudowaną funkcję sprawdzania dostępności.
- AccessODF dla LibreOffice: rozszerzenie do sprawdzania dostępności dokumentu LibreOffice Writer; należy pamiętać, że to rozszerzenie nie jest już kompatybilne z najnowszymi wersjami LibreOffice (powyżej wersji 4.0);
- Ace autorstwa DAISY App jest narzędziem do sprawdzania dostępności plików EPUB.
Wreszcie, stare, ale wciąż przydatne oprogramowanie do oceny potencjału niektórych treści internetowych do wywoływania napadów: PEAT Photosensitive Epilepsy Analysis Tool) dla systemu Windows.
1. Obrazy
Kryterium 1.1. Czy każdy obraz niosący informacje ma alternatywę tekstową??
-
Test 1.1.1 :
Czy każdy obraz (znacznik
img
lub znacznik z atrybutemrole="img"
) niosący informacje ma alternatywę tekstową?
-
Test 1.1.2 :
Czy każdy obszar (znacznik
area
) na mapie odsyłaczy niosący informacje ma alternatywę tekstową?
-
Test 1.1.3 :
Czy każdy przycisk graficzny (znacznik
input
z atrybutemtype="image"
) ma alternatywę tekstową?
-
Test 1.1.4 :
Czy każdy obszar klikalny na mapie odsyłaczy po stronie serwera ma łącze na stronie?
-
Test 1.1.5 :
Czy każdy obraz wektorowy (znacznik
svg
) niosący informacje spełnia te warunki:Znacznik
svg
ma atrybut role=”img”.Znacznik
svg
ma alternatywę tekstową.
-
Test 1.1.6 :
Czy każdy obraz obraz z obiektu (znacznik
object
z atrybutemtype="image"
) niosący informacje spełnia jeden z tych warunków:Znacznik
object
ma alternatywę tekstową.Bezpośrednio po elemencie
object
istnieje łącze lub przycisk przyległy umożliwiający dostęp do treści alternatywnych.Istnieje mechanizm umożliwiający zastąpienie elementu
object
treścią alternatywną.
-
Test 1.1.7 :
Czy każdy obraz wbudowany (znacznik
embed
z atrybutemtype="image"
) niosący informacje spełnia jeden z tych warunków:Znacznik
embed
ma alternatywę tekstową.Bezpośrednio po elemencie
embed
istnieje łącze lub przycisk przyległy umożliwiający dostęp do treści alternatywnych.Istnieje mechanizm umożliwiający zastąpienie elementu
embed
treścią alternatywną.
-
Test 1.1.8 :
Czy każdy obraz na kanwie (znacznik
canvas
) niosący informacje spełnia jeden z tych warunków:Znacznik
canvas
ma alternatywę tekstową.Pomiędzy znacznikami
<canvas>
i</canvas>
istnieje treść alternatywna.Bezpośrednio po elemencie
canvas
istnieje łącze lub przycisk przyległy umożliwiający dostęp do treści alternatywnych.Istnieje mechanizm umożliwiający zastąpienie elementu
canvas
treścią alternatywną.
Kryterium 1.2. Czy każdy obraz dekoracyjny jest prawidłowo ignorowany przez technologie wspomagające?
-
Test 1.2.1 :
Czy każdy obraz dekoracyjny (znacznik
img
) bez legendy spełnia jeden z tych warunków?Znacznik
<img>
ma pusty atrybutalt
(alt=""
) oraz nie ma żadnego innego atrybutu pozwalającego na podanie alternatywy tekstowej.Znacznik
<img>
ma atrybutaria-hidden="true"
lub atrybutrole="presentation"
.
-
Test 1.2.2 :
Czy każdy dekoracyjny obszar nieklikalny na mapie odsyłaczy (znacznik
area
bez atrybutuhref
) spełnia jeden z tych warunków?Znacznik
area
ma pusty atrybutalt
(alt=""
) oraz nie ma żadnego innego atrybutu pozwalającego na podanie alternatywy tekstowej.Znacznik
area
ma atrybutaria-hidden="true"
lub atrybutrole="presentation"
.
-
Test 1.2.3 :
Czy każdy dekoracyjny obraz z obiektu (znacznik
object
z atrybutemtype="image"
) bez legendy spełnia jeden z tych warunków?Znacznik
object
ma atrybutaria-hidden="true"
.Znacznik
object
nie ma alternatywy tekstowej.Między
<object>
i</object>
nie ma tekstu służącego jako alternatywa tekstowa.
-
Test 1.2.4 :
Czy każdy dekoracyjny obraz wektorowy (znacznik
svg
) bez legendy spełnia jeden z tych warunków?Znacznik
svg
ma atrybutaria-hidden="true"
.Znacznik
svg
ani jego znaczniki potomne nie mają alternatywy tekstowej.Nie ma znaczników
title
idesc
lub są puste.Znacznik
svg
ani jego znaczniki potomne nie mają atrybututitle
.
-
Test 1.2.5 :
Czy każdy dekoracyjny obraz na kanwie (znacznik
canvas
) bez legendy spełnia jeden z tych warunków?Znacznik
canvas
ma atrybutaria-hidden="true"
.Znacznik
canvas
ani jego znaczniki potomne nie mają alternatywy tekstowej.Między
<canvas>
a</canvas>
nie ma tekstu służącego jako alternatywa tekstowa.
-
Test 1.2.6 :
Czy każdy dekoracyjny obraz wbudowany (znacznik
embed
z atrybutemtype="image"
) bez legendy spełnia jeden z tych warunków?Znacznik
embed
ma atrybutaria-hidden="true"
.Znacznik
embed
ani jego znaczniki potomne nie mają alternatywy tekstowej.
Uwagi
Jeśli obraz jest powiązany z legendą, uwaga techniczna WCAG zaleca podawanie alternatywy tekstowej (zobacz kryterium 1.9). W takim przypadku kryterium 1.2 nie ma zastosowania.
W przypadku dekoracyjnego obrazu wektorowego (znacznik svg
), wyświetlanego za pomocą <use href="…">
, będącego elementem potomnym svg
, test 1.2.4 będzie miał zastosowanie również do powiązanego znacznika svg
poprzez znacznik use
.
Atrybut WAI-ARIA role="presentation"
może być użyty do zadeklarowania obrazu dekoracyjnego oraz nieklikalnych obszarów w mapach odsyłaczy. Można również stosować atrybut role="none"
wprowadzony w ARIA 1.1. i tożsamy z role="presentation"
. Nadal jednak lepiej jest używać atrybutu role="presentation"
, dopóki wsparcie dla role="none"
nie będzie zadowalające.
Kryterium 1.3. Czy dla każdego obrazu niosącego informację, który ma alternatywę tekstową, alternatywa ta jest odpowiednia (z wyjątkiem przypadków szczególnych)?
-
Test 1.3.1 :
Czy dla każdego obrazu niosącego informację, który ma alternatywę tekstową, alternatywa ta jest odpowiednia (z wyjątkiem przypadków szczególnych)?
Jeśli istnieje, treść atrybutu
alt
jest odpowiednia.Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.
-
Test 1.3.2 :
Czy dla każdego obszaru mapy odsyłaczy (znacznik
area
) niosącego informację, który ma alternatywę tekstową, alternatywa ta jest odpowiednia (z wyjątkiem przypadków szczególnych)?Jeśli istnieje, treść atrybutu
alt
jest odpowiednia.Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.
-
Test 1.3.3 :
Czy dla każdego przycisku graficznego (znacznik
input
z atrybutemtype="image"
), który ma alternatywę tekstową, alternatywa ta jest odpowiednia (z wyjątkiem przypadków szczególnych)?Jeśli istnieje, treść atrybutu
alt
jest odpowiednia.Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.
-
Test 1.3.4 :
Czy dla każdego obrazu z obiektu (znacznik
object
z atrybutemtype="image"
), który ma alternatywę tekstową, alternatywa ta jest odpowiednia (z wyjątkiem przypadków szczególnych)}Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.Jeśli istnieje, treść alternatywna jest odpowiednia.
-
Test 1.3.5 :
Czy dla każdego obrazu wbudowanego (znacznik
embed
z atrybutemtype="image"
) niosącego informację, który ma alternatywę tekstową, alternatywa ta jest odpowiednia (z wyjątkiem przypadków szczególnych)?Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.Jeśli istnieje, treść alternatywna jest odpowiednia.
-
Test 1.3.6 :
Czy dla każdego obrazu wektorowego (znacznik
svg
niosącego informację, który ma alternatywę tekstową, alternatywa ta jest odpowiednia (z wyjątkiem przypadków szczególnych)?Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.
-
Test 1.3.7 :
Czy dla każdego obrazu na kanwie (znacznik
canvas
) niosącego informację, który ma alternatywę tekstową lub treść alternatywną, alternatywa ta jest odpowiednia (z wyjątkiem przypadków szczególnych)?Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.Jeśli istnieje, treść alternatywna jest odpowiednia.
-
Test 1.3.8 :
Czy dla każdego obrazu na na kanwie (znacznik
canvas
) niosącego informację, który ma treść alternatywną między<canvas>
i</canvas>
, ta treść alternatywna jest poprawnie odwzorowana przez technologie wspomagające? -
Test 1.3.9 :
Czy dla każdego obrazu niosącego informację, który ma alternatywę tekstową, ta alternatywa jest krótka i zwięzła (z wyjątkiem przypadków szczególnych)?
Kryterium 1.4. Czy dla każdego obrazu użytego jako captcha lub jako obraz testu, który ma alternatywę tekstową, alternatywa ta określa charakter i funkcję obrazu?
-
Test 1.4.1 :
Czy dla każdego obrazu (znacznik
img
) użytego jako captcha lub obraz testu, który ma alternatywę tekstową, alternatywa ta jest odpowiednia?Jeśli istnieje, treść atrybutu
alt
jest odpowiednia.Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.
-
Test 1.4.2 :
Czy dla każdego obszaru (znacznik
area
) mapy odsyłaczy użytej jako captcha lub jako obraz testu, który ma alternatywę tekstową, alternatywa ta jest odpowiednia?Jeśli istnieje, treść atrybutu
alt
jest odpowiednia.Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.
-
Test 1.4.3 :
Czy dla każdego przycisku graficznego (znacznik (znacznik
input
) z atrybutemtype="image"
) użytego jako captcha lub obraz testu, który ma alternatywę tekstową, alternatywa ta jest odpowiednia?Jeśli istnieje, treść atrybutu
alt
jest odpowiednia.Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.
-
Test 1.4.4 :
Czy dla każdego obrazu z obiektu (znacznik
object
z atrybutemtype="image"
) użytego jako captcha lub obraz testu, który ma alternatywę tekstową lub treść alternatywną, alternatywa ta jest odpowiednia?Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.Jeśli istnieje, treść alternatywna jest odpowiednia.
-
Test 1.4.5 :
Czy dla każdego obrazu wbudowanego (znacznik
embed
z atrybutemtype="image"
) użytego jako captcha lub jako obraz testu, który ma alternatywę tekstową lub treść alternatywną, alternatywa ta jest odpowiednia?Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.Jeśli istnieje, treść alternatywna jest odpowiednia.
-
Test 1.4.6 :
Czy dla każdego obrazu wektorowego (znacznik
svg
) użytego jako captcha lub jako obraz testu, który ma alternatywę tekstową, alternatywa ta jest odpowiednia?Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.
-
Test 1.4.7 :
Czy dla każdego obrazu na kanwie (znacznik
canvas
) użytego jako captcha lub jako obraz testu, który ma alternatywę tekstową lub treść alternatywną, alternatywa ta jest odpowiednia?Jeśli istnieje, treść atrybutu
title
jest odpowiednia.Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść fragmentu tekstu powiązanego za pomocą atrybutu
aria-labelledby
jest odpowiednia.Jeśli istnieje, treść alternatywna jest odpowiednia.
Kryterium 1.5. Czy dla każdego obrazu użytego jako captcha istnieje alternatywne rozwiązanie dostępu do treści lub do funkcji captcha?
-
Test 1.5.1 :
Czy każdy obraz (znaczniki
img
,area
,object
,embed
,svg
canvas
) użyty jako captcha spełnia jeden z tych warunków?Istnieje co najmniej jedna inna niegraficzna forma captcha.
Istnieje inne rozwiązanie dostępu do funkcji chronionej przez captcha.
-
Test 1.5.2 :
Czy każdy przycisk graficzny (znacznik
input
z atrybutemtype="image"
) użyty jako captcha spełnia jeden z tych warunków?Istnieje co najmniej jedna inna niegraficzna forma captcha.
Istnieje inne rozwiązanie dostępu do funkcji chronionej przez captcha.
Kryterium 1.6. Czy każdy obraz niosący informację ma opis szczegółowy, jeśli to konieczne??
-
Test 1.6.1 :
Czy każdy obraz (znacznik
img
) niosący informację, który wymaga opisu szczegółowego, spełnia jeden z tych warunków?Istnieje atrybut
longdesc
, który podaje adres (URL) strony zawierającej opis szczegółowy.Istnieje alternatywa tekstowa, która zawiera odniesienie do opisu szczegółowego znajdującego się obok obrazu.
Istnieje łącze lub przycisk przyległy udostępniający opis szczegółowy.
-
Test 1.6.2 :
Czy każdy obraz z obiektu (znacznik
object
z atrybutemtype="image"
) niosący informację, który wymaga opisu szczegółowego, spełnia jeden z tych warunków?Istnieje alternatywa tekstowa, która zawiera odniesienie do opisu szczegółowego znajdującego się obok obrazu.
Istnieje łącze lub przycisk przyległy udostępniający opis szczegółowy.
-
Test 1.6.3 :
Czy każdy obraz wbudowany (znacznik
embed
) niosący informację, który wymaga opisu szczegółowego, spełnia jeden z tych warunków?Istnieje alternatywa tekstowa, która zawiera odniesienie do opisu szczegółowego znajdującego się obok obrazu.
Istnieje łącze lub przycisk przyległy udostępniający opis szczegółowy.
-
Test 1.6.4 :
Czy każdy przycisk graficzny (znacznik
input
z atrybutemtype="image"
) niosący informację, który wymaga opisu szczegółowego, spełnia jeden z tych warunków?Istnieje alternatywa tekstowa, która zawiera odniesienie do opisu szczegółowego znajdującego się obok obrazu.
Istnieje łącze lub przycisk przyległy udostępniający opis szczegółowy.
Istnieje atrybut
aria-describedby
skojarzony z fragmentem tekstu służącym jako opis szczegółowy.
-
Test 1.6.5 :
Czy każdy obraz wektorowy (znacznik
svg
) niosący informację, który wymaga opisu szczegółowego, spełnia jeden z tych warunków?Istnieje atrybut
aria-label
, który zawiera odniesienie do opisu szczegółowego znajdującego się obok obrazu.Istnieje atrybut
aria-labelledby
skojarzony z fragmentem tekstu służącym jako alternatywa tekstowa oraz innym służącym jako opis szczegółowy.Istnieje atrybut
aria-describedby
skojarzony z fragmentem tekstu służącym jako opis szczegółowy.Istnieje łącze lub przycisk przyległy udostępniający opis szczegółowy.
-
Test 1.6.6 :
Czy dla każdego obrazu wektorowego (znacznik
svg
) niosącego informację, który zawiera opis szczegółowy skojarzony przez atrybutyaria-label
,aria-labelledby
lubaria-describedby
, opis ten jest poprawnie odwzorowany przez technologie wspomagające? -
Test 1.6.7 :
Czy każdy obraz na kanwie (znacznik
canvas
) niosący informację, który wymaga opisu szczegółowego, spełnia jeden z tych warunków?Istnieje atrybut
aria-label
zawierający tekst alternatywny i odwołanie do opisu szczegółowego znajdującego się obok obrazu.Istnieje atrybut
aria-labelledby
skojarzony z fragmentem tekstu służącym jako alternatywa tekstowa oraz innym służącym jako opis szczegółowy.Istnieje treść tekstowa obok
<canvas>
i</canvas>
zawierająca opis szczegółowy obrazu na kanwie.Istnieje treść tekstowa między
<canvas>
i</canvas>
będąca opisem szczegółowym.Istnieje łącze lub przycisk przyległy udostępniający opis szczegółowy.
-
Test 1.6.8 :
Czy dla każdego obrazu na kanwie (znacznik
canvas
) niosącego informację, który zawiera odwołanie do sąsiadującego opisu szczegółowego, odwołanie to jest poprawnie odwzorowane przez technologie wspomagające? -
Test 1.6.9 :
Czy dla każdego obrazu (znacznik
img
,input
z atrybutemtype="image"
,area
,object
,embed
,svg
,canvas
albo z atrybutemrole="img"
) niosącego informację, który zawiera opis szczegółowy i wykorzystuje atrybutaria-describedby
, atrybutaria-describedby
odnosi się do opisu szczegółowego? -
Test 1.6.10 :
Czy dla każdego obrazu zdefiniowanego atrybutem
role="img"
niosącego informację, który wymaga opisu szczegółowego, spełniony jest jeden z tych warunków:Istnieje atrybut
aria-label
zawierający tekst alternatywny i odwołanie do opisu szczegółowego znajdującego się obok obrazu.Istnieje atrybut
aria-labelledby
skojarzony z fragmentem tekstu służącym jako alternatywa tekstowa oraz innym służącym jako opis szczegółowy.Istnieje atrybut
aria-describedby
skojarzony z fragmentem tekstu służącym jako opis szczegółowy.Istnieje łącze lub przycisk przyległy udostępniający opis szczegółowy.
Uwagi
W przypadku SVG brak obsługi elementu <title>
przez technologie wspomagające powoduje trudności w przypadku używania elementu <desc>
w celu implementacji krótkiej alternatywy tekstowej obrazu, jeśli obraz wymaga opisu szczegółowego. W takim przypadku, w celu utworzenia opisu szczegółowego zaleca się użycie atrybutu aria-label do implementacji zarówno krótkiego tekstu alternatywnego, jak i bardziej opisu szczegółowego sąsiadującego, albo atrybutu aria-labelledby
w celu powiązania fragmentów tekstu jako krótkiej alternatywy tekstowej i opisu szczegółowego.
Użycie atrybutu aria-describedby
nie jest możliwe do powiązania obrazu z jego opisem szczegółowym z powodu braku wsparcia przez technologie wspomagające.
Powiązany opis szczegółowy może być zaimplementowany przy pomocy znacznika figcaption
, w tym przypadku kryterium 1.9 powinno być sprawdzone (zwłaszcza użycie figure
i atrybutów role="figure"
oraz aria-label
.
Kryterium 1.7. Czy dla każdego obrazu niosącego informację, który ma opis szczegółowy, opis ten jest odpowiedni?
-
Test 1.7.1 :
Czy każdy obraz (znacznik
img
) niosący informację, który ma opis szczegółowy, spełnia te warunki?Opis szczegółowy przy pomocy adresu znajdującego się w atrybucie
longdesc
jest odpowiedni.Opis szczegółowy na stronie i podany w atrybucie
alt
jest odpowiedni.Opis szczegółowy udostępniony przy pomocy łącza lub przycisku przyległego jest odpowiedni.
Skojarzony za pomocą atrybutu
aria-describedby
fragment tekstu służący jako opis szczegółowy jest odpowiedni.
-
Test 1.7.2 :
Czy każdy przycisk graficzny (znacznik
input
z atrybutemtype="image"
) niosący informację, który ma opis szczegółowy, spełnia jeden z tych warunków?Opis szczegółowy na stronie i podany w tekście alternatywnym jest odpowiedni.
Opis szczegółowy udostępniony przy pomocy łącza lub przycisku przyległego jest odpowiedni.
Skojarzony za pomocą atrybutu
aria-describedby
fragment tekstu służący jako opis szczegółowy jest odpowiedni.
-
Test 1.7.3 :
Czy każdy obraz z obiektu (znacznik
object
z atrybutemtype="image"
) niosący informację, który ma opis szczegółowy, spełnia te warunki?Opis szczegółowy na stronie i podany w tekście alternatywnym jest odpowiedni.
Opis szczegółowy w sąsiedztwie obrazu z obiektu jest odpowiedni.
Opis szczegółowy udostępniony przy pomocy łącza lub przycisku przyległego jest odpowiedni.
Skojarzony za pomocą atrybutu
aria-describedby
fragment tekstu służący jako opis szczegółowy jest odpowiedni.
-
Test 1.7.4 :
Czy każdy obraz wbudowany (znacznik
embed
z atrybutemtype="image"
) niosący informację, który ma opis szczegółowy, spełnia te warunki?Opis szczegółowy na stronie i podany w tekście alternatywnym jest odpowiedni.
Opis szczegółowy w sąsiedztwie obrazu z obiektu jest odpowiedni.
Opis szczegółowy udostępniony przy pomocy łącza lub przycisku przyległego jest odpowiedni.
Skojarzony za pomocą atrybutu
aria-describedby
fragment tekstu służący jako opis szczegółowy jest odpowiedni.
-
Test 1.7.5 :
Czy każdy obraz wektorowy (znacznik
svg
) niosący informację, który ma opis szczegółowy, spełnia te warunki?Opis szczegółowy na stronie i podany w tekście alternatywnym jest odpowiedni.
Opis szczegółowy na stronie i podany w tekście znacznika
desc
lub atrybututitle
jest odpowiedniOpis szczegółowy na stronie podany w tekście znacznika
desc
jest odpowiedniOpis szczegółowy w sąsiedztwie obrazu wektorowego jest odpowiedni.
Opis szczegółowy udostępniony przy pomocy łącza lub przycisku przyległego jest odpowiedni.
Skojarzony za pomocą atrybutu
aria-describedby
fragment tekstu służący jako opis szczegółowy jest odpowiedni.
-
Test 1.7.6 :
Czy każda obraz na kanwie (znacznik
canvas
) niosący informację, który ma opis szczegółowy, spełnia te warunki?Opis szczegółowy na stronie i podany w tekście alternatywnym jest odpowiedni.
Opis szczegółowy na stronie i podany w tekście miedzy
<canvas>
i</canvas>
jest odpowiedniOpis szczegółowy na stronie podany w tekście miedzy
<canvas>
i</canvas>
jest odpowiedniOpis szczegółowy w sąsiedztwie obrazu na kanwie jest odpowiedni.
Opis szczegółowy udostępniony przy pomocy łącza lub przycisku przyległego jest odpowiedni.
Skojarzony za pomocą atrybutu
aria-describedby
fragment tekstu służący jako opis szczegółowy jest odpowiedni.
Kryterium 1.8. Każdy obraz tekstu niosący informację, w razie braku mechanizmu zastępowania, powinien być, o ile to możliwe, zastąpiony tekstem formatowanym. Czy ta zasada jest przestrzegana (z wyjątkiem przypadków szczególnych)?
-
Test 1.8.1 :
Każdy obraz tekstu (znacznik
img
lub znacznik z atrybutemrole="img"
) niosący informację, w razie braku mechanizmu zastępowania, powinien być, o ile to możliwe, zastąpiony tekstem formatowanym. Czy ta zasada jest przestrzegana (z wyjątkiem przypadków szczególnych)? -
Test 1.8.2 :
Dla każdego przycisku z „obrazem tekstu” (znacznik
input
z atrybutemtype="image"
) niosącego informację, w razie mechanizmu zastępowania, powinien być, o ile to możliwe, zastąpiony tekstem formatowanym. Czy ta zasada jest przestrzegana (z wyjątkiem przypadków szczególnych)?} -
Test 1.8.3 :
Każdy obraz tekstu z obiektu (znacznik
object
z atrybutemtype="image"
) niosący informację, w razie braku mechanizmu zastępowania, powinien być, o ile to możliwe, zastąpiony tekstem formatowanym. Czy ta zasada jest przestrzegana (z wyjątkiem przypadków szczególnych)? -
Test 1.8.4 :
Czy każdy wbudowany obraz tekstu (znacznik
embed
z atrybutemtype="image"
) niosący informację, w razie braku mechanizmu zastępowania, powinien być, o ile to możliwe, zastąpiony tekstem formatowanym. Czy ta zasada jest przestrzegana (z wyjątkiem przypadków szczególnych)? -
Test 1.8.5 :
Każdy obraz tekstu na kanwie (znacznik
canvas
) niosący informację, w razie braku mechanizmu zastępowania, powinien być, o ile to możliwe, zastąpiony tekstem formatowanym. Czy ta zasada jest przestrzegana (z wyjątkiem przypadków szczególnych)?
Uwagi
Kryterium to nie ma wpływu na tekst w obrazach wektorowych będący rzeczywistym tekstem.
Kryterium 1.9. Czy każda legenda obrazu jest, jeśli to konieczne, poprawnie powiązana z odpowiadającym obrazem?
-
Test 1.9.1 :
Czy każdy obraz (znacznik
img
lubinput
z atrybutemtype="image"
) opatrzony legendą spełnia, jeśli to konieczne, te warunki?Obraz (znacznik
img
, znacznikinput
z atrybutemtype="image"
, element z atrybutemrole="img"
) i jego legenda są zawarte w znacznikufigure
Znacznik
figure
ma atrybutrole="figure"
lubrole="group"
.Znacznik
figure
ma atrybutaria-label
, którego treść jest identyczna z treścią legendy.Legenda jest zawarta w znaczniku
figcaption
.
-
Test 1.9.2 :
Czy każdy opatrzony legendą obraz z obiektu (znacznik
object
z atrybutemtype="image"
) spełnia, jeśli to konieczne, te warunki?Obraz z obiektu (znacznik
object
i jego legenda są zawarte w znacznikufigure
Znacznik
figure
ma atrybutrole="figure"
lubrole="group"
.Znacznik
figure
ma atrybutaria-label
, którego treść jest identyczna z treścią legendy.Legenda jest zawarta w znaczniku
figcaption
.
-
Test 1.9.3 :
Czy każdy opatrzony legendą obraz wbudowany (znacznik
embed
) z alternatywą tekstową spełnia, jeśli to konieczne, te warunki?Obraz wbudowany (znacznik
embed
) i jego legenda są zawarte w znacznikufigure
.Znacznik
figure
ma atrybutrole="figure"
lubrole="group"
.Znacznik
figure
ma atrybutaria-label
, którego treść jest identyczna z treścią legendy.Legenda jest zawarta w znaczniku
figcaption
.
-
Test 1.9.4 :
Czy każdy opatrzony legendą obraz wektorowy (znacznik
svg
) spełnia, jeśli to konieczne, te warunki?Obraz wektorowy (znacznik
svg
) i jego legenda są zawarte w znacznikufigure
.Znacznik
figure
ma atrybutrole="figure"
lubrole="group"
.Znacznik
figure
ma atrybutaria-label
, którego treść jest identyczna z treścią legendy.Legenda jest zawarta w znaczniku
figcaption
.
-
Test 1.9.5 :
Czy każdy opatrzony legendą obraz na kanwie (znacznik
canvas
) spełnia, jeśli to konieczne, te warunki?Obraz na kanwie (znacznik
canvas
) i jego legenda są zawarte w znacznikufigure
.Znacznik
figure
ma atrybutrole="figure"
lubrole="group"
.Znacznik
figure
ma atrybutaria-label
, którego treść jest identyczna z treścią legendy.Legenda jest zawarta w znaczniku
figcaption
.
Uwagi
Implementacja atrybutu role="group"
lub role="figure"
dla elementu zagnieżdżonego figure
pozwala rozwiązać kwestię braku wsparcia dla elementów figure
w technologiach wspomagających. Użycie elementu figcaption
do powiązania legendy z obrazem wymaga co najmniej użycia atrybutu aria-label
na macierzystym elemencie figure
, którego treść będzie identyczna z treścią elementu figcaption
. Aby zapewnić optymalną obsługę, można również utworzyć jawne skojarzenie między treścią tekstu alternatywnego do obrazu a treścią elementu figcaption
, na przykład:
<img src="image.png" alt="Zdjęcie: Zachodzące słońce" /><figcaption>Zdjęcie: dzięki xxx</figcaption>
Atrybuty aria-labelledby
i aria-describedby
nie mogą być aktualnie używane ze względu na brak wsparcia przez technologie wspomagające.
Uwaga: Obrazy z legendą muszą również spełniać kryterium 1.1 i kryterium 1.3 odnoszące się do obrazów niosących informacje.
2. Ramki
Kryterium 2.1. Czy każda ramka ma tytuł ramki?
-
Test 2.1.1 :
Czy każda ramka (znacznik
iframe
lubframe
) ma atrybuttitle
?
Kryterium 2.2. Czy dla każdej ramki, która ma tytuł ramki, ten tytuł jest odpowiedni?
-
Test 2.2.1 :
Czy dla każdej ramki (znacznik
iframe
lubframe
), która ma atrybuttitle
, treść tego atrybutu jest odpowiednia?
3. Kolory
Kryterium 3.1. Na żadnej stronie internetowej informacje nie mogą być podawane wyłącznie kolorem. Czy ta zasada jest przestrzegana?
-
Test 3.1.1 :
W żadnym przypadku wyróżnienia kolorem słowa lub zestawu słów, w których kolor jest nośnikiem informacji, informacja nie może być przekazana wyłącznie kolorem. Czy ta zasada jest przestrzegana?
-
Test 3.1.2 :
W żadnym przypadku odwołania się do koloru w tekście informacja nie może być przekazana wyłącznie kolorem. Czy ta zasada jest przestrzegana?
-
Test 3.1.3 :
W przypadku żadnego obrazu niosącego informację kolorem informacja nie może być przekazana wyłącznie kolorem. Czy ta zasada jest przestrzegana?
-
Test 3.1.4 :
Dla żadnej właściwości CSS określającej kolor i niosącej informację informacja nie może być przekazana wyłącznie kolorem. Czy ta zasada jest przestrzegana?
-
Test 3.1.5 :
Dla żadnych mediów opartych na czasie niosących informację informacja nie może być przekazana wyłącznie kolorem. Czy ta zasada jest przestrzegana?
-
Test 3.1.6 :
Dla żadnych mediów nieopartych na czasie niosących informację informacja nie może być przekazana wyłącznie kolorem. Czy ta zasada jest przestrzegana?
Kryterium 3.2. Czy na każdej stronie internetowej kontrast między kolorem tekstu a kolorem tła jest wystarczająco wysoki (z wyjątkiem przypadków szczególnych)?
-
Test 3.2.1 :
Czy na każdej stronie internetowej niepogrubione teksty i obrazy niepogrubionego tekstu o rozmiarach czcionki mniejszych niż 24px spełniają jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Współczynnik kontrastu między tekstem i jego tłem wynosi co najmniej 4,5:1.
Mechanizm pozwala użytkownikowi wyświetlić tekst o współczynniku kontrastu co najmniej 4.5:1.
-
Test 3.2.2 :
Czy na każdej stronie internetowej niepogrubione teksty i obrazy niepogrubionego tekstu o rozmiarach czcionki mniejszych niż 18,5px spełniają jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Współczynnik kontrastu między tekstem i jego tłem wynosi co najmniej 4,5:1.
Mechanizm pozwala użytkownikowi wyświetlić tekst o współczynniku kontrastu co najmniej 4.5:1.
-
Test 3.2.3 :
Czy na każdej stronie internetowej niepogrubione teksty i obrazy niepogrubionego tekstu o rozmiarach czcionki większych lub równych 24px spełniają jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Współczynnik kontrastu między tekstem i jego tłem wynosi co najmniej 3:1.
Mechanizm pozwala użytkownikowi wyświetlić tekst o współczynniku kontrastu co najmniej 3:1.
-
Test 3.2.4 :
Czy na każdej stronie internetowej niepogrubione teksty i obrazy niepogrubionego tekstu o rozmiarach czcionki większych lub równych 18,5px spełniają jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Współczynnik kontrastu między tekstem i jego tłem wynosi co najmniej 3:1.
Mechanizm pozwala użytkownikowi wyświetlić tekst o współczynniku kontrastu co najmniej 3:1.
-
Test 3.2.5 :
Czy każdy mechanizm zmiany kontrastów ma współczynnik kontrastu wystarczająco wysoki?
Kryterium 3.3. Czy na każdej stronie internetowej kolory użyte w elementach interfejsu lub elementach graficznych niosących informacje są wystarczająco kontrastowe (z wyjątkiem przypadków szczególnych)?
-
Test 3.3.1 :
Czy współczynnik kontrastu między kolorami elementów interfejsu w jego różnych stanach a przyległym kolorem tła spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Współczynnik kontrastu wynosi co najmniej 3:1
Mechanizm umożliwia uzyskanie współczynnika kontrastu wynoszącego co najmniej 3:1
-
Test 3.3.2 :
Czy współczynnik kontrastu różnych kolorów tworzących element graficzny, jeśli jest to konieczne do jego zrozumienia, oraz przyległy kolor tła spełniają jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Współczynnik kontrastu wynosi co najmniej 3:1
Mechanizm umożliwia uzyskanie współczynnika kontrastu wynoszącego co najmniej 3:1
-
Test 3.3.3 :
Czy na każdej stronie internetowej współczynnik kontrastu różnych sąsiadujących ze sobą kolorów elementu graficznego, gdy są one niezbędne do jego zrozumienia, spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Współczynnik kontrastu wynosi co najmniej 3:1
Mechanizm umożliwia uzyskanie współczynnika kontrastu wynoszącego co najmniej 3:1
-
Test 3.3.4 :
Czy w mechanizmie umożliwiającym wyświetlanie odpowiedniego współczynnika kontrastu kolory elementu interfejsu lub elementów graficznych niosących informacje, które go tworzą, są wystarczająco skontrastowane?
4. Multimedia
Kryterium 4.1. Czy nagrane media oparte na czasie mają, jeśli to konieczne, transkrypcję lub audiodeskrypcję (z wyjątkiem przypadków szczególnych)?
-
Test 4.1.1 :
Czy każde nagrane medium oparte na czasie tylko audio spełnia, jeśli to konieczne, jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Istnieje transkrypcja tekstowa dostępna przez łącze lub przycisk przyległy.
Istnieje powiązana transkrypcja tekstowa jasno identyfikowalna.
-
Test 4.1.2 :
Czy każde nagrane medium oparte na czasie tylko wideo spełnia, jeśli to konieczne, jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Istnieje wersja alternatywna „tylko audio” dostępna przez łącze lub przycisk przyległy.
Istnieje powiązana wersja alternatywna „tylko audio” jasno identyfikowalna.
Istnieje transkrypcja dostępna przez łącze lub przycisk przyległy.
Istnieje powiązana transkrypcja jasno identyfikowalna.
Istnieje audiodeskrypcja zsynchronizowana.
Istnieje wersja alternatywna z audiodeskrypcją zsynchronizowaną dostępną przez łącze lub przycisk przyległy.
-
Test 4.1.3 :
Czy każde nagrane zsynchronizowane medium oparte na czasie spełnia, jeśli to konieczne, jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Istnieje transkrypcja dostępna przez łącze lub przycisk przyległy.
Istnieje powiązana transkrypcja jasno identyfikowalna.
Istnieje audiodeskrypcja zsynchronizowana.
Istnieje wersja alternatywna z audiodeskrypcją zsynchronizowaną dostępną przez łącze lub przycisk przyległy.
Kryterium 4.2. Czy dla każdych nagranych mediów opartych na czasie, które mają transkrypcję lub audiodeskrypcję zsynchronizowaną, są one odpowiednie (z wyjątkiem przypadków szczególnych)?
-
Test 4.2.1 :
Czy dla każdego nagranego medium opartego na czasie, tylko audio, które ma transkrypcję, jest ona odpowiednia (z wyjątkiem przypadków szczególnych)?
-
Test 4.2.2 :
Czy każde nagrane medium oparte na czasie tylko wideo spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Transkrypcja jest odpowiednia.
Audiodeskrypcja zsynchronizowana jest odpowiednia.
Audiodeskrypcja zsynchronizowana wersji alternatywnej jest odpowiednia.
Wersja alternatywna tylko audio jest odpowiednia.
-
Test 4.2.3 :
Czy każde nagrane medium oparte na czasie zsynchronizowane spełnia te warunki (z wyjątkiem przypadków szczególnych)?
Transkrypcja jest odpowiednia.
Audiodeskrypcja zsynchronizowana jest odpowiednia.
Audiodeskrypcja zsynchronizowana wersji alternatywnej jest odpowiednia.
Kryterium 4.3. Czy wszystkie nagrane media oparte na czasie mają, jeśli to konieczne, napisy zsynchronizowane (z wyjątkiem przypadków szczególnych)?
-
Test 4.3.1 :
Czy każde nagrane medium oparte na czasie zsynchronizowane spełnia, jeśli to konieczne, jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Zsynchronizowane media oparte na czasie mają napisy zsynchronizowane.
Istnieje wersja alternatywna, która ma napisy zsynchronizowane dostępne przez łącze lub przycisk przyległy.
-
Test 4.3.2 :
Czy w przypadku wszystkich nagranych zsynchronizowanych mediów oparte na czasie, które mają napisy zsynchronizowane rozpowszechniane przez znacznik
track
, znaczniktrack
ma atrybutkind="captions"
?
Kryterium 4.4. Czy dla każdych nagranych mediów opartych na czasie, które mają napisy zsynchronizowane, napisy te są odpowiednie?
-
Test 4.4.1 :
Czy dla każdych nagranych mediów opartych na czasie, które mają napisy zsynchronizowane, napisy te są odpowiednie?
Kryterium 4.5. Czy każde nagrane medium oparte na czasie ma, jeśli to konieczne, zsynchronizowaną audiodeskrypcję (z wyjątkiem przypadków szczególnych)?
-
Test 4.5.1 :
Czy każde nagrane medium oparte na czasie tylko wideo spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Ma wersję alternatywna z zsynchronizowaną audiodeskrypcją.
-
Test 4.5.2 :
Czy każde nagrane zsynchronizowane medium oparte na czasie na żywo spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Ma wersję alternatywna z zsynchronizowaną audiodeskrypcją.
Kryterium 4.6. Czy w przypadku wszystkich nagranych mediów opartych na czasie, które mają audiodeskrypcję zsynchronizowaną, jest ona odpowiednia?
-
Test 4.6.1 :
Czy w przypadku wszystkich nagranych mediów opartych na czasie, które mają audiodeskrypcję zsynchronizowaną, jest ona odpowiednia?
-
Test 4.6.2 :
Czy w przypadku wszystkich zsynchronizowanych mediów opartych na czasie, które mają audiodeskrypcję zsynchronizowaną, jest ona odpowiednia?
Kryterium 4.7. Czy wszystkie media oparte na czasie są wyraźnie określone (z wyjątkiem przypadków szczególnych)?
-
Test 4.7.1 :
Czy w przypadku wszystkich mediów opartych na czasie (tylko dźwięk, tylko wideo lub zsynchronizowanych) sąsiednia treść tekstowa pomaga jasno zidentyfikować medium zmienne w czasie (z wyjątkiem przypadków szczególnych)?
Kryterium 4.8. Czy wszystkie media nieoparte na czasie mają, jeśli to konieczne, alternatywę tekstową (z wyjątkiem przypadków szczególnych)?
-
Test 4.8.1 :
Czy każde medium nieoparte na czasie spełnia, jeśli to konieczne, jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Łącze przyległe, jasno identyfikowalne, zawiera adres (url) strony zawierającej alternatywę.
Łącze przyległe, jasno identyfikowalne, umożliwia dostęp do alternatywy na stronie.
-
Test 4.8.2 :
Czy każde medium nieoparte na czasie powiązane z alternatywą spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Istnieje strona, do której odnosi się łącze przyległe.
Na stronie znajduje się alternatywa, do której odnosi się łącze przyległe.
Kryterium 4.9. Czy w przypadku wszystkich mediów nieopartych na czasie, które mają alternatywę, alternatywa ta jest odpowiednia?
-
Test 4.9.1 :
Czy w przypadku wszystkich mediów nieopartych na czasie, które mają alternatywę, alternatywa ta umożliwia dostęp do tej samej treści i do podobnych funkcjonalności?
Kryterium 4.10. Czy każdy dźwięk uruchomiony automatycznie może być kontrolowany przez użytkownika?
-
Test 4.10.1 :
Czy każda sekwencja dźwiękowa uruchamiana automatycznie przy pomocy znacznika
object
,video
,audio
,embed
,bgsound
lub kodu JavaScript spełnia jeden z tych warunków?Czas trwania sekwencji dźwiękowej jest równy lub krótszy niż 3 sekundy.
Sekwencja dźwiękowa może być zatrzymana w wyniku akcji użytkownika.
Głośność sekwencji dźwiękowej może być kontrolowana przez użytkownika niezależnie od kontroli dźwięku systemu.
Kryterium 4.11. Czy przeglądanie wszystkich mediów opartych na czasie jest, jeśli to konieczne, kontrolowane przy pomocy klawiatury i dowolnego urządzenia wskazującego?
-
Test 4.11.1 :
Czy każde medium oparte na czasie ma, jeśli to konieczne, funkcjonalności kontroli przeglądania?
-
Test 4.11.2 :
Czy w przypadku wszystkich mediów opartych na czasie każda funkcjonalność spełnia jeden z tych warunków?
Funkcjonalność jest uruchamiana za pomocą klawiatury i dowolnego urządzenia wskazującego.
Na stronie istnieje funkcjonalność uruchamiana za pomocą klawiatury i dowolnego urządzenia wskazującego pozwalająca wykonać tę samą akcję.
-
Test 4.11.3 :
Czy w przypadku wszystkich mediów opartych na czasie każda funkcjonalność spełnia jeden z tych warunków?
Funkcjonalność jest uruchamiana za pomocą klawiatury i dowolnego urządzenia wskazującego.
Na stronie istnieje funkcjonalność uruchamiana za pomocą klawiatury i dowolnego urządzenia wskazującego pozwalająca wykonać tę samą akcję.
Kryterium 4.12. Czy przeglądanie wszystkich mediów nieopartych na czasie jest kontrolowane przy pomocy klawiatury i dowolnego urządzenia wskazującego?
-
Test 4.12.1 :
Czy w przypadku wszystkich mediów nieopartych na czasie, każda funkcjonalność spełnia jeden z tych warunków?
Funkcjonalność jest uruchamiana za pomocą klawiatury i dowolnego urządzenia wskazującego.
Na stronie istnieje funkcjonalność uruchamiana za pomocą klawiatury i dowolnego urządzenia wskazującego pozwalająca wykonać tę samą akcję.
-
Test 4.12.2 :
Czy dla wszystkich mediów nieopartych na czasie każda funkcjonalność spełnia jeden z tych warunków?
Funkcjonalność jest uruchamiana za pomocą klawiatury i dowolnego urządzenia wskazującego.
Na stronie istnieje funkcjonalność uruchamiana za pomocą klawiatury i dowolnego urządzenia wskazującego pozwalająca wykonać tę samą akcję.
Kryterium 4.13. Czy każde medium oparte na czasie i nieoparte na czasie jest kompatybilne z technologiami wspomagajacymi (z wyjątkiem przypadków szczególnych)?
-
Test 4.13.1 :
Czy każde medium oparte na czasie i nieoparte na czasie spełnia te warunki (z wyjątkiem przypadków szczególnych)?
Nazwa, rola, wartość, parametry i zmiany statusu elementów interfejsu są dostępne dla technologii wsparcia przez API dostępności.
Alternatywa kompatybilna z API dostępności pozwala na dostęp do tych samych funkcjonalności.
-
Test 4.13.2 :
Czy każde medium oparte na czasie i nieoparte na czasie, które ma alternatywę kompatybilną z technologiami wspomagajacymi, spełnia jeden z tych warunków?
Alternatywa sąsiaduje z medium opartym lub nieopartym na czasie.
Alternatywa jest dostępna przez łącze lub przycisk przyległy.
Mechanizm umożliwia zastąpienie medium opartego lub nieopartego na czasie jego alternatywą.
5. Tabele
Kryterium 5.1. Czy każda złożona tabela danych ma podsumowanie?
-
Test 5.1.1 :
Czy każda złożona tabela danych (znacznik
table
) ma podsumowanie]?
Uwagi
Specyfikacja HTML dostarcza kilku sposobów na powiązanie podsumowania z tabelą (tabela powiązana z fragmentem tekstu atrybutem aria-describedby
, tabela zgrupowana w elemencie figure
z podsumowaniem w elemencie figcaption
lub elemencie p
, podsumowanie w elemencie details
zawartym w elemencie caption
). Metody te nie mają wystarczającego wsparcia, aby mogły być obecnie stosowane.
Kryterium 5.2. Czy dla każdej złożonej tabeli danych, która ma podsumowanie, jest ono odpowiednie?
-
Test 5.2.1 :
Czy dla każdej złożonej tabeli danych (znacznik
table
), która ma podsumowanie, jest ono odpowiednie?
Kryterium 5.3. Czy w przypadku każdej tabeli układu treść zlinearyzowana pozostaje zrozumiała (z wyjątkiem przypadków szczególnych)?
-
Test 5.3.1 :
Czy każda tabela układu spełnia warunki (z wyjątkiem przypadków szczególnych)?
Treść zlinearyzowana pozostaje zrozumiała.
Znacznik
table
ma atrybutrole="presentation"
.
Kryterium 5.4. Czy dla każdej tabeli danych, która ma tytuł, tytuł jest poprawnie powiązany z tabelą?
-
Test 5.4.1 :
Czy dla każdej tabeli danych, która ma tytuł, tytuł jest poprawnie powiązany z tabelą?
Kryterium 5.5. Czy dla każdej tabeli danych, która ma tytuł, tytuł jest odpowiedni?
-
Test 5.5.1 :
Czy dla każdej tabeli danych, która ma tytuł tabeli, tytuł określa treść tabeli w sposób jasny i zwięzły?
Kryterium 5.6. Czy dla każdej tabeli danych, każdy nagłówek kolumn i każdy nagłówek wiersza są poprawnie zadeklarowane?
-
Test 5.6.1 :
Czy dla każdej tabeli danych każdy nagłówek kolumny zastosowany w całej kolumnie spełnia jeden z tych warunków?
Nagłówek kolumny ma znacznik
th
.Nagłówek kolumny ma atrybut
role="columnheader"
.
-
Test 5.6.2 :
Czy w przypadku każdej tabeli danych każdy nagłówek wiersza zastosowany w całym wierszu spełnia jeden z tych warunków?
Nagłówek kolumny ma znacznik
th
.Nagłówek kolumny ma atrybut
role="rowheader"
.
-
Test 5.6.3 :
Czy w przypadku każdej tabeli danych każdy nagłówek, który nie jest zastosowany do całego wiersza lub całej kolumny, ma znacznik
th
? -
Test 5.6.4 :
Czy w przypadku każdej tabeli danych każda komórka z wieloma nagłówkami ma strukturę
td
lub<th>
?}
Kryterium 5.7. Czy dla każdej tabeli danych używana jest odpowiednia technika umożliwiająca powiązanie każdej komórki danych z jej nagłówkami (z wyjątkiem przypadków szczególnych)?
-
Test 5.7.1 :
Czy każda treść nagłówka (znacznik
th
), który dotyczy całej kolumny lub całego wiersza spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?Znacznik
th
ma unikalny atrybutid
.Znacznik
th
ma atrybutscope
.Znacznik
th
ma atrybutrole="rowheader"
lubrole="columnheader"
.
-
Test 5.7.2 :
Czy każda treść nagłówka (znacznik
th
), który dotyczy całej kolumny lub całego wiersza i ma atrybutscope
, spełnia jeden z tych warunków?Znacznik
th
ma atrybutscope
z wartością"row"
dla nagłówków wierszy.Znacznik
th
ma atrybutscope
z wartością"col"
dla nagłówków kolumn.
-
Test 5.7.3 :
Czy każdy nagłówek (znacznik
th
) nie odnoszący się do wszystkich wierszy lub kolumn spełnia te warunki?Znacznik
th
nie ma atrybutuscope
.Znacznik
th
nie ma atrybuturole="rowheader"
anirole="columnheader"
.Znacznik
th
ma unikalny atrybutid
.
-
Test 5.7.4 :
Czy każda komórka (znacznik
td
lubth
) powiązana z jednym lub wieloma nagłówkami posiadającymi atrybutid
spełnia te warunki?Komórka ma atrybut
headers
.Atrybut
headers
ma listę wartości powiązanych z komórką za pomocą atrybutuid
.
-
Test 5.7.5 :
Czy w przypadku każdego elementu z atrybutem
role="rowheader"
lubrole="columnheader"
), którego treść dotyczy całego wiersza lub kolumny, spełnia on jeden z tych warunków?Element ma atrybut
role="rowheader"
dla nagłówków wierszy.Element ma atrybut
role="columnheader"
dla nagłówków kolumn.
Uwagi
Jeśli atrybut headers
jest zaimplementowany w komórce już powiązanej z nagłówkiem (wiersza lub kolumny) przez atrybut scope
(z wartością col
lub row
), technologie wspomagające odtwarzają nagłówki posiadające atrybut headers
. Nagłówki powiązane z atrybutem scope
są ignorowane.
Kryterium 5.8. Żadna tabela układu nie może używać elementów przeznaczonych dla tabel danych. Czy ta zasada jest przestrzegana?
-
Test 5.8.1 :
Czy każda tabela układu spełnia te warunki?
Tabela układu (znacznik
table
) nie ma znacznikówcaption
,th
,thead
,tfoot
,colgroup
lub elementów z atrybutami WAI-ARIArole="rowheader"
,role="columnheader"
.Komórki tabeli układu (znacznik
td
) nie mają atrybutówscope
,headers
,axis
.
6. Łącza
Kryterium 6.1. Czy każde łącze jest zrozumiałe (z wyjątkiem przypadków szczególnych)?
-
Test 6.1.1 :
Czy każde łącze tekstowe spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Sam tekst łącza umożliwia zrozumienie jego funkcji i przeznaczenia.
Tekst łącza dodany do kontekstu łącza umożliwia zrozumienie jego funkcji i przeznaczenia.
-
Test 6.1.2 :
Czy każde łącze graficzne spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Sam tekst łącza umożliwia zrozumienie jego funkcji i przeznaczenia.
Tekst łącza dodany do kontekstu łącza umożliwia zrozumienie jego funkcji i przeznaczenia.
-
Test 6.1.3 :
Czy każde łącze złożone spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Sam tekst łącza umożliwia zrozumienie jego funkcji i przeznaczenia.
Tekst łącza dodany do kontekstu łącza umożliwia zrozumienie jego funkcji i przeznaczenia.
-
Test 6.1.4 :
Czy każde łącze SVG (wektorowe) spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Sam tekst łącza umożliwia zrozumienie jego funkcji i przeznaczenia.
Tekst łącza dodany do kontekstu łącza umożliwia zrozumienie jego funkcji i przeznaczenia.
-
Test 6.1.5 :
Czy w przypadku każdego łącza, które ma widoczny tytuł, dostępna nazwa łącza zawiera co najmniej treść widocznego tytułu (z wyjątkiem przypadków szczególnych)?
Uwagi
Gdy widoczny nagłówek jest uzupełniany przez inne wyrażenie w dostępnej nazwie:
WCAG nalega na umieszczenie widocznego tytułu na początku dostępnej nazwy, ale nie zastrzega wyłączności tego miejsca;
WCAG uznaje niedokładne dopasowanie widocznego łańcucha tytułu w ramach dostępnej nazwy za niepowodzenie.
Na przykład, jeśli rozważymy widoczny nagłówek „Zamów teraz” uzupełniony w dostępnej nazwie wyrażeniem „produkt X”, możemy mieć następujące różne przypadki :
„Zamów teraz produkt X” jest poprawne (dobra praktyka);
„Produkt X: zamów teraz” jest poprawne;
„Zamówienie produktu X teraz” jest niepoprawne.
Kryterium 6.2. Czy na każdej stronie internetowej każde łacze, z wyjątkiem kotwic ma tekst?
-
Test 6.2.1 :
Czy na każdej stronie, każde łącze z wyjątkiem kotwic, ma tekst między <a> oraz </a>?
Uwagi
Kotwica nie jest łączem, mimo że element <a>
od dawna był używany do obsługi tej techniki. Nie jest zatem objęty tym kryterium.
7. Skrypty
Kryterium 7.1. Czy każdy skrypt jest, jeśli to konieczne, kompatybilny z technologiami wspomagającymi?
-
Test 7.1.1 :
Czy każdy skrypt, który generuje lub kontroluje element interfejsu spełnia, jeśli to konieczne, jeden z tych warunków?
Nazwa, rola, wartość, parametry i zmiany statusu są dostępne dla technologii wspomagających przez API dostępności.
Na stronie znajduje się inny dostępny element interfejsu pozwalający uzyskać dostęp do takich samych funkcjonalności.
Dostępna alternatywa umożliwia dostęp do takich samych funkcjonalności.
-
Test 7.1.2 :
Czy każdy skrypt, który generuje lub kontroluje element interfejsu spełnia jeden z tych warunków?
Element interfejsu jest poprawnie odwzorowany przy pomocy technologii wspomagających użytkownika.
Dostępna alternatywa umożliwia dostęp do takich samych funkcjonalności.
-
Test 7.1.3 :
Czy każdy skrypt, który generuje lub kontroluje element interfejsu spełnia jeden z tych warunków?
Element ma odpowiednią dostępną nazwę.
Dostępna nazwa komponentu zawiera przynajmniej widoczną etykietę.
Element ma odpowiednią rolę.
Uwagi
Kryterium 7.1 implementuje pojęcie kompatybilny z technologiami wspomagającymi zgodnie z definicją WCAG, a także odwołuje się do API WAI-ARIA w celu udostępnienia komponentu lub funkcjonalności. Prawidłowe użycie API WAI-ARIA jest sprawdzane przy pomocy testów 7.1.1, 7.1.2, 7.1.3.
Ważna uwaga: w środowisku HTML5 wiele komponentów może do działania wymagać JavaScript, zatem dostarczenie alternatywy komponentu JavaScript, który nie będzie mógł zostać udostępniony powinno wykorzystywać specjalną dla tego elementu metodę umożliwiającą zastąpienie go dostępną alternatywą (i go uruchomić).
Oznacza to, że wyłączenie JavaScript dla zbioru stron nie jest akceptowalne, chyba, że nie wyklucza użycia innych komponentów.
Kryterium 7.2. Czy dla każdego skryptu, który ma alternatywę, alternatywa ta jest odpowiednia?
-
Test 7.2.1 :
Czy każdy skrypt rozpoczynający się znacznikiem
script
, który ma alternatywę, spełnia jeden z tych warunków?Alternatywa między
<noscript>
i</noscript>
umożliwia dostęp do podobnych treści i funkcjonalności.Wyświetlona strona, gdy JavaScript jest wyłączony, umożliwia dostęp do podobnych treści i funkcjonalności.
Strona alternatywna umożliwia dostęp do podobnych treści i funkcjonalności.
Język skryptu po stronie serwera umożliwia dostęp do podobnych treści i funkcjonalności.
Alternatywa obecna na stronie umożliwia dostęp do podobnych treścii funkcjonalności.
-
Test 7.2.2 :
Czy każdy element nietekstowy uaktualniony przez skrypt (na stronie lub w ramce), który ma alternatywę, spełnia te warunki?
Alternatywa elementu nietekstowego jest uaktualniana.
Uaktualniona alternatywa jest odpowiednia.
Kryterium 7.3. Czy każdy skrypt może być kontrolowany za pomocą klawiatury i dowolnego urządzenia wskazującego (z wyjątkiem przypadków szczególnych)?
-
Test 7.3.1 :
Czy każdy element posiadający program obsługi zdarzeń kontrolowany przez skrypt spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Element jest dostępny i aktywowany za pomocą i za pomocą dowolnego urządzenia wskazującego.
Na stronie znajduje się inny element dostępny i aktywowany za pomocą klawiatury i za pomocą dowolnego urządzenia wskazującego pozwalający wykonać tę samą akcję.
-
Test 7.3.2 :
Skrypt nie powinien usuwać oznaczenia fokusem ustawionego na danym elemencie. Czy ta zasada jest przestrzegana (z wyjątkiem przypadków szczególnych)?
Kryterium 7.4. Czy w przypadku każdego skryptu, który inicjuje zmianę kontekstu, użytkownik jest o tym powiadamiany lub nad nim kontrolę?
-
Test 7.4.1 :
Czy każdy skrypt, który inicjalizuje zmianę kontekstu, spełnia jeden z tych warunków?
Użytkownik jest powiadamiany tekstem o działaniu skryptu i rodzaju zmiany przed jego uruchomieniem.
Zmiana kontekstu jest inicjalizowana jednoznacznym przyciskiem (
input
typu="submit"
,button
lubimage
lub znacznikiembutton
).Zmiana kontekstu jest inicjalizowana jednoznacznym łączem.
Kryterium 7.5. Czy na każdej stronie internetowej komunikaty o stanie są poprawnie odwzorowane przez technologie wspomagające
-
Test 7.5.1 :
Czy komunikat o stanie informujący o powodzeniu działania, wyniku lub stanie aplikacji korzysta z atrybutu
role="status"
? -
Test 7.5.2 :
Czy każdy komunikat o stanie, który informuje o wystąpieniu błędu lub zawiera sugestię naprawy korzysta z atrybutu
role="alert"
? -
Test 7.5.3 :
Czy każdy komunikat o stanie wskazujący postęp procesu wykorzystuje jeden z atrybutów
role="log"
,role="progressbar"
lubrole="status"
?
Uwagi
Role WAI-ARIA log
, status
i alert
domyślnie mają wartość atrybutu aria-live
i aria-atomic
. Można zatem uznać, że (zgodnie ze specyfikacją WAI-ARIA 1.1):
Atrybut
aria-live="polite"
powiązany z komunikatem o stanie może być rozpatrywany w odniesieniu do rolilog
.Atrybut
aria-live="polite"
oraz atrybutaria-atomic="true"
powiązany z komunikatem o stanie może być rozpatrywany w odniesieniu do rolistatus
.Atrybut
aria-live="assertive"
oraz atrybutaria-atomic="true"
powiązany z komunikatem o stanie może być rozpatrywany w odniesieniu do rolialert
.
Jest to uwarunkowane tym, że charakter komunikatu o stanie prawidłowo spełnia niejawnie ustanowione połączenie. W przypadku komunikatu o stanie wskazującego postęp procesu i zmaterializowanego graficznie za pomocą paska postępu, konieczny jest wyraźny atrybut role="progressbar"
.
8. Elementy obowiązkowe
Kryterium 8.1. Czy dla każdej strony internetowej został określony typ dokumentu?
-
Test 8.1.1 :
Czy dla każdej strony internetowej określony jest typ dokumentu (znacznik
doctype
)? -
Test 8.1.2 :
Czy dla każdej strony internetowej oznaczenie typu dokumentu (znacznik
doctype
) jest poprawne? -
Test 8.1.3 :
Czy dla każdej strony internetowej, która posiada zadeklarowany typ dokumentu, deklaracja ta znajduje się w kodzie źródłowym przed znacznikiem
html
?
Kryterium 8.2. Czy dla każdej strony internetowej kod źródłowy jest poprawny zależnie od określonego typu dokumentu (z wyjątkiem przypadków szczególnych)?
-
Test 8.2.1 :
Czy dla każdej deklaracji typu dokumentu, kod źródłowy strony spełnia te warunki (z wyjątkiem przypadków szczególnych)?
Znaczniki, atrybuty i wartości atrybutów spełniają zasady zapisu.
Zagnieżdżenie znaczników jest poprawne.
Otwarcia i zamknięcia znaczników są poprawne.
Wartości atrybutów
id
są unikalne.Atrybuty nie są powtarzane w tym samym elemencie.
Kryterium 8.3. Czy na każdej stronie internetowej jest określony domyślny język?
-
Test 8.3.1 :
Czy dla każdej strony internetowej wskazanie języka domyślnego spełnia jeden z tych warunków?
Wskazanie języka strony (atrybut
lang
lubxml:lang
) jest podane dla elementuhtml
.Wskazanie języka strony (atrybut
lang
lubxml:lang
) jest podane dla każdego elementu tekstowego lub dla każdego elementu nadrzędnego.
Kryterium 8.4. Czy dla każdej strony internetowej, która ma domyślny język, kod języka jest odpowiedni?
-
Test 8.4.1 :
Czy dla każdej strony internetowej, który ma język domyślny, kod języka w źródle strony spełnia te warunki?
Kod języka jest poprawny.
Kod języka jest odpowiedni.
Kryterium 8.5. Czy każda strona internetowa ma tytuł strony?
-
Test 8.5.1 :
Czy każda strona internetowa ma tytuł strony (znacznik
title
)?
Kryterium 8.6. Czy dla każdej strony internetowej, która ma tytuł strony, ten tytuł jest odpowiedni?
-
Test 8.6.1 :
Czy dla każdej strony internetowej, który ma tytuł strony (znacznik
title
), treść tego znacznika jest odpowiednia?
Kryterium 8.7. Czy dla każdej strony internetowej każda zmiana języka jest wskazana w kodzie źródłowym (z wyjątkiem przypadków szczególnych)?
-
Test 8.7.1 :
Czy na każdej stronie internetowej każdy tekst napisany w innym języku niż język domyślny spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Wskazanie języka jest podane w elemencie zawierającym tekst (atrybut
lang
lubxml:lang
).Wskazanie języka jest podane w elementach nadrzędnych (atrybut
lang
lubxml:lang
).
Kryterium 8.8. Czy dla każdej strony internetowej każda zmiana języka jest odpowiednia?
-
Test 8.8.1 :
Czy na każdej stronie internetowej każda zmiana języka spełnia te warunki?
Kod języka jest poprawny.
Kod języka jest odpowiedni.
Kryterium 8.9. Na żadnej stronie internetowej znaczniki nie są używane tylko do celów prezentacji. Czy ta zasada jest przestrzegana?
-
Test 8.9.1 :
Na żadnej stronie internetowej znaczniki (z wyjątkiem
div
,span
itable
) nie powinny być używane tylko do celów prezentacji. Czy ta zasada jest przestrzegana?
Kryterium 8.10. Czy na każdej stronie internetowej sygnalizowana jest zmiana kierunku czytania?
-
Test 8.10.1 :
Czy na każdej stronie internetowej każdy tekst, którego kierunek czytania jest inny niż kierunek domyślny, jest zawarty w znaczniku posiadającym atrybut
dir
? -
Test 8.10.2 :
Czy na każdej stronie internetowej każda zmiana kierunku czytania (atrybut
dir
) spełnia te warunki?Wartość atrybutu
dir
jest zgodna (rtl
lubltr
).Wartość atrybutu
dir
jest odpowiednia.
9. Struktura informacji
Kryterium 9.1. Czy na każdej stronie internetowej informacje mają strukturę określoną przez odpowiednie użycie nagłówków?
-
Test 9.1.1 :
Czy na każdej stronie internetowej hierarchia między nagłówkami (znacznik
hx
lub znacznik posiadający rolę ARIArole="heading"
powiązany z właściwościąaria-level
) jest odpowiednia? -
Test 9.1.2 :
Czy na każdej stronie internetowej treść każdego nagłówka (znacznik
hx
lub znacznik posiadający rolę ARIArole="heading"
powiązany z właściwościąaria-level
) jest odpowiednia? -
Test 9.1.3 :
Czy na każdej stronie internetowej każdy fragment tekstu stanowiący tytuł jest ustrukturyzowany za pomocą znacznika nagłówka (
hx
) lub znacznika posiadającego rolę ARIArole="heading"
powiązanego z właściwościąaria-level
?
Uwagi
ARIA pozwala zdefiniować tytuły przy pomocy atrybutów role="heading"
i aria-level
(wskazanie poziomu tytułu). Chociaż preferowane jest użycie rodzimych w HTML elementów nagłówka <hx>
, użycie roli WAI-ARIA role="heading"
jest zgodne z dostępnością.
Mimo, iż specyfikacja HTML5 dopuszcza użycie wyłącznie nagłówków poziomu 1 (h1
), brak wsparcia przez technologie wspomagające wymaga użycia bardziej odpowiedniej hierarchii nagłówków. (Uwaga tłumacza: Sprawdzić, czy ta uwaga jest jeszcze aktualna - w specyfikacji HTML 5.1 wycofano się z koncepcji automatycznego tworzenia konspektów treści i dostosowanej do konspektu hierarchii nagłówków.
Kryterium 9.2. Czy na każdej stronie internetowej struktura dokumentu jest spójna (z wyjątkiem przypadków szczególnych)?
-
Test 9.2.1 :
Czy na każdej stronie internetowej struktura dokumentu spełnia te warunki (z wyjątkiem przypadków szczególnych?
Obszar nagłówka strony jest zorganizowany przy pomocy znacznika
header
.Główne i drugorzędne obszary nawigacyjne są zorganizowane przy pomocy znacznika
nav
.Znacznik
nav
jest zarezerwowany do zbudowania struktury głównych i drugorzędnych obszarów nawigacji.Obszar treści głównej jest zorganizowany przy pomocy znacznika
main
.Struktura dokumentu wykorzystuje jeden znacznik
main
.Obszar stopki strony jest zorganizowany przy pomocy znacznika
footer
.
Uwagi
Znacznik main
może być użyty wiele razy w tym samym dokumencie HTML. Jednak dla technologii wspomagających zawsze może być widoczny i czytelny tylko jeden, pozostałe muszą mieć atrybut hidden
lub styl umożliwiający ich ukrycie przed technologiami wspomagającymi. Należy jednak pamiętać, że jeśli arkusze stylów zostaną wyłączone, użycie jedynie stylu nie wystarczy, aby zapewnić niepowtarzalność widocznego obszaru main
Kryterium 9.3. Czy na każdej stronie internetowej każda lista ma odpowiednią strukturę?
-
Test 9.3.1 :
Czy na każdej stronie internetowej informacje pogrupowane wizualnie w postaci listy nieuporządkowanej spełniają jeden z tych warunków?
Lista wykorzystuje znaczniki HTML
ul
ili
.Lista wykorzystuje role ARIA
list
ilistitem
.
-
Test 9.3.2 :
Czy na każdej stronie internetowej informacje pogrupowane wizualnie w postaci listy uporządkowanej spełniają jeden z tych warunków?
Lista wykorzystuje znaczniki HTML
ol
ili
.Lista wykorzystuje role ARIA
list
ilistitem
.
-
Test 9.3.3 :
Czy na każdej stronie internetowej informacje pogrupowane w postaci listy definicji wykorzystują znaczniki
dl
idt
/dd
?
Uwagi
Role WAI-ARIA list
i listitem
mogą wymagać użycia właściwości aria-setsize
i aria-posinset
w przypadku, gdy cała lista nie jest dostępna przy pomocy DOM wygenerowanego w momencie przeglądania.
Role tree
, tablist
, menu
, combobox
i listbox
i nie odpowiadają liście HTML ul
lub ol
.
Zobacz: The roles model - list oraz The role model - ARIA SETSIZE.
Kryterium 9.4. Czy na każdej stronie internetowej każdy cytat jest poprawnie oznaczony?
-
Test 9.4.1 :
Czy na każdej stronie internetowej każdy krótki cytat używa znacznika
q
? -
Test 9.4.2 :
Czy na każdej stronie internetowej każdy blok tekstu używa znacznika
blockquote
?
10. Prezentacja informacji
Kryterium 10.1. Czy na witrynie internetowej arkusze stylów są używane do kontroli prezentacji informacji?
-
Test 10.1.1 :
Na żadnej stronie internetowej znaczniki służące do prezentacji informacji nie powinny być obecne w kodzie źródłowym stron. Czy ta zasada jest przestrzegana?
-
Test 10.1.2 :
Na żadnej stronie internetowej, atrybuty służące do prezentacji informacji nie powinny być obecne w kodzie źródłowym stron. Czy ta zasada jest przestrzegana?
-
Test 10.1.3 :
Czy na każdej stronie internetowej użycie spacji spełnia te warunki?
Spacje nie są używane do oddzielania liter wyrazu.
Spacje nie są używane do symulacji tabel.
Spacje nie są używane do symulacji kolumn tekstu.
Kryterium 10.2. Czy na każdej stronie internetowej widoczna treść jest obecna, gdy arkusze stylów są wyłączone?
-
Test 10.2.1 :
Czy na każdej stronie internetowej widoczna treść jest obecna, gdy arkusze stylów są wyłączone?
Kryterium 10.3. Czy na każdej stronie internetowej informacja pozostaje zrozumiała, gdy arkusze stylów są wyłączone?
-
Test 10.3.1 :
Czy na każdej stronie internetowej informacje są zrozumiałe, gdy arkusze stylów są wyłączone?
Kryterium 10.4. Czy na każdej stronie internetowej tekst pozostaje czytelny, gdy rozmiar czcionki jest zwiększony co najmniej do 200%? (z wyjątkiem przypadków szczególnych)?
-
Test 10.4.1 :
W arkuszach stylów witryny internetowej jednostki bezwzględne (
pt
,pc
,mm
,cm
,in
) nie powinny być używane dla typów multimediówscreen
,tv
,handheld
,projection
. Czy ta zasada jest przestrzegana (z wyjątkiem przypadków szczególnych? -
Test 10.4.2 :
Na żadnej stronie internetowej, zwiększenie rozmiaru czcionki co najmniej do 200% nie powinno powodować utraty informacji. Czy zasada ta jest przestrzegana zgodnie z jednym z tych warunków (z wyjątkiem przypadków szczególnych)?
Podczas korzystania z funkcji powiększania tekstu w przeglądarce.
Podczas korzystania z funkcji powiększania grafiki w przeglądarce.
Podczas używania komponentu interfejsu specyficznego dla witryny w celu powiększenia tekstu lub powiększenia.
-
Test 10.4.3 :
Na każdej stronie internetowej musi być możliwe zwiększenie rozmiaru czcionki co najmniej do 200% dla całego tekstu na stronie. Czy zasada ta jest przestrzegana zgodnie z jednym z tych warunków (z wyjątkiem przypadków szczególnych)?
Podczas korzystania z funkcji powiększania tekstu w przeglądarce.
Podczas korzystania z funkcji powiększania grafiki w przeglądarce.
Podczas używania komponentu interfejsu specyficznego dla witryny w celu powiększenia tekstu lub powiększenia.
Kryterium 10.5. Czy na każdej stronie internetowej deklaracje CSS kolorów tła elementu i fontu są poprawnie używane?
-
Test 10.5.1 :
Czy na każdej stronie internetowej każdej deklaracji CSS koloru fontu (
color
) elementu, który może zawierać tekst, towarzyszy deklaracja koloru tła (background
,background-color
), co najmniej odziedziczona po rodzicu? -
Test 10.5.2 :
Czy na każdej stronie internetowej każdej deklaracji koloru tła (
background
,background-color
) elementu, który może zawierać tekst, towarzyszy deklaracja koloru fontu (color
), co najmniej odziedziczona po rodzicu? -
Test 10.5.3 :
Czy na każdej stronie internetowej każdemu obrazkowi użytemu przy pomocy CSS do stworzenia tła (
background
,background-image
) elementu, który może zawierać tekst, towarzyszy deklaracja koloru tła (background
,background-color
), co najmniej odziedziczona po rodzicu?
Kryterium 10.6. Czy na każdej stronie internetowej łącze tekstowe, którego charakter nie jest oczywisty, jest widoczne na tle otaczającego tekstu?
-
Test 10.6.1 :
Czy na każdej stronie internetowej każde oznaczone tylko kolorem łącze tekstowe, którego charakter nie jest oczywisty, spełnia te warunki?
Łącze ma kolor o współczynniku kontrastu większym lub równym 3:1 w porównaniu do otaczającego tekstu.
Łącze ma wizualne wyróżnienie po najechaniu myszką inne niż zmiana koloru.
Łącze ma wizualne wyróżnienie fokusu inne niż zmiana koloru.
Kryterium 10.7. Czy na każdej stronie internetowej dla każdego elementu oznaczanego fokusem oznaczenie fokusem jest widoczne?
-
Test 10.7.1 :
Dla każdego elementu oznaczanego fokusem jeden z tych warunków jest spełniony?
Rodzimy styl fokusu przeglądarki nie jest usuwany ani degradowany.
Styl fokusu zdefiniowany przez autora jest widoczny.
Kryterium 10.8. Czy na każdej stronie internetowej wszystkie treści ukryte są ignorowane przez technologie wspomagające?
-
Test 10.8.1 :
Czy na każdej stronie internetowej każda treść ukryta spełnia jeden z tych warunków?
Ukryta treść nie jest przeznaczona do odwzorowania przez technologie wspomagające.
Ukryta treść może być odwzorowania przez technologie wspomagające po działaniu użytkownika na klawiaturze lub dowolnym urządzeniu wskazującym.
Uwagi
WAI-ARIA proponuje atrybut aria-hidden
(true
lub false
), który hamuje odtwarzanie treści w technologiach wspomagających bez wpływu na widoczność w programów użytkownika: treść z aria-hidden="true"
nie będzie wypowiadana, ale pozostanie widoczna.
Oprócz przypadków, gdy treść kontrolowana przez aria-hidden
nie jest przeznaczona do odwzorowania przez technologie wspomagające, wartość atrybutu aria-hidden
musi być spójna z wyświetlonym lub ukrytym stanem treści na ekranie.
Specyfikacja HTML5 proponuje atrybut hidden
, który uniemożliwia udostępnienie (gdy atrybut hidden
jest obecny) treści w wygenerowanym DOM (w podobny sposób do type="hidden"
dla kontroli formularza).
Możliwe są sytuacje, gdy treść kontrolowana przez hidden
lub aria-hidden
ma chwilowo status niezgodny ze statusem wyświetlonym lub ukrytym, na przykład gdy chce się udostępnić element, ale jego wyświetlanie na ekranie zależy od późniejszej czynności. W takim przypadku, należy uwzględnić stan końcowy treści.
Kryterium 10.9. Na żadnej stronie internetowej informacja nie może być podawana wyłącznie przez kształt, rozmiar lub położenie. Czy ta zasada jest przestrzegana?
-
Test 10.9.1 :
Na żadnej stronie internetowej dla żadnego tekstu lub grupy tekstów informacja nie może być podawana wyłącznie przez kształt, rozmiar lub położenie. Czy ta zasada jest przestrzegana?
-
Test 10.9.2 :
Na żadnej stronie internetowej dla żadnego obrazu lub grupy obrazów informacja nie może być podawana wyłącznie przez kształt, rozmiar lub położenie. Czy ta zasada jest przestrzegana?
-
Test 10.9.3 :
Na żadnej stronie internetowej dla żadnych mediów opartych na czasie informacje nie może być podawana wyłącznie przez kształt, rozmiar lub położenie. Czy ta zasada jest przestrzegana?
-
Test 10.9.4 :
Na żadnej stronie internetowej dla żadnych mediów nieopartych na czasie informacja nie może być podawana wyłącznie przez kształt, rozmiar lub położenie. Czy ta zasada jest przestrzegana?
Kryterium 10.10. Na żadnej stronie internetowej informacja nie może być podawana wyłącznie przez kształt, rozmiar lub położenie. Czy ta zasada została zaimplementowana w adekwatny sposób?
-
Test 10.10.1 :
Na żadnej stronie internetowej dla żadnego tekstu lub grupy tekstów informacja nie może być podawana wyłącznie przez kształt, rozmiar lub położenie. Czy ta zasada została zaimplementowana w adekwatny sposób?
-
Test 10.10.2 :
Na żadnej stronie internetowej dla żadnego obrazu lub grupy obrazów informacja nie może być podawana wyłącznie przez kształt, rozmiar lub położenie. Czy ta zasada została zaimplementowana w adekwatny sposób?
-
Test 10.10.3 :
Na żadnej stronie internetowej dla żadnych mediów opartych na czasie informacja nie może być podawana wyłącznie przez kształt, rozmiar lub położenie. Czy ta zasada została zaimplementowana w adekwatny sposób?
-
Test 10.10.4 :
Na żadnej stronie internetowej dla żadnych mediów nieopartych na czasie informacja nie może być podawana wyłącznie przez kształt, rozmiar lub położenie. Czy ta zasada została zaimplementowana w adekwatny sposób?
Kryterium 10.11. Czy dla każdej strony internetowej treść może być prezentowana bez konieczności przewijania w pionie i poziomie w przypadku okien o wysokości 256 pikseli lub szerokości 320 pikseli (z wyjątkiem przypadków szczególnych)?
-
Test 10.11.1 :
Czy na każdej stronie internetowej, na której kierunek czytania jest poziomy, wyświetlanej w oknie zmniejszonym do szerokości 320 pikseli, wszystkie informacje i funkcje są dostępne bez przewijania w poziomie (z wyjątkiem przypadków szczególnych)?
-
Test 10.11.2 :
Czy na każdej stronie internetowej, na której kierunek czytania jest pionowy, wyświetlanej w oknie zmniejszonym do wysokości 256 pikseli, wszystkie informacje i funkcje są dostępne bez przewijania w pionie (z wyjątkiem przypadków szczególnych)?
Uwagi
Kiedy mówimy o pikselu, mówimy o pikselu CSS zdefiniowanym przez W3C (https://www.w3.org/TR/css3-values/#reference-pixel).
Kryterium 10.12. Czy na każdej stronie internetowej użytkownik może na nowo określać właściwości dotyczące odstępów w tekście bez utraty treści lub funkcjonalności (z wyjątkiem przypadków szczególnych)?
-
Test 10.12.1 :
Czy na każdej stronie internetowej tekst pozostaje czytelny, gdy wyświetlacz jest modyfikowany zgodnie z warunkami poniżej (z wyjątkiem przypadków szczególnych)?
Odstępy między wierszami (
line-height
) są co najmniej 1,5 razy większe niż rozmiar czcionki.Odstęp między dwoma akapitami (tekstem w znacznikach
p
) jest co najmniej 2 razy większy niż rozmiar czcionki.Odstępy między literami (
letter-spacing
) są co najmniej 0,12 razy większe niż rozmiar czcionki.Odstępy między wyrazami (
word-spacing
) są co najmniej 0,16 razy większe niż rozmiar tekstu.
Kryterium 10.13. Czy na każdej stronie internetowej dodatkowa treść pojawiaj się po przeniesieniu fokusu klawiatury lub najechaniu kursorem na element interfejsu kontrolowany przez użytkownika (z wyjątkiem przypadków szczególnych)?
-
Test 10.13.1 :
Czy każda dodatkowa treść, pojawiająca się po przeniesieniu fokusu klawiatury lub najechaniu kursorem na element interfejsu, może zostać ukryta przez akcję użytkownika bez przenoszenia fokusu lub kursora myszy (z wyjątkiem przypadków szczególnych)?
-
Test 10.13.2 :
Czy każda dodatkowa treść pojawiająca się po najechaniu kursorem na element interfejsu może zostać najechana kursorem myszy bez znikania (z wyjątkiem przypadków szczególnych)?
-
Test 10.13.3 :
Czy każda dodatkowa treść, pojawiająca się po przeniesieniu fokusu klawiatury lub najechaniu kursorem na element interfejsu spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Dodatkowa treść pozostaje widoczna, dopóki użytkownik nie usunie wskaźnika myszy ani fokusu klawiatury z dodatkowej treści i komponentu interfejsu, który wywołał jej pojawienie się.
Dodatkowa treść pozostaje widoczna, nie wykona akcji ukrywającej tę treść bez przesuwania fokusu lub wskaźnika myszy poza komponent interfejsu który wywołał jej pojawienie się.
Dodatkowa treść pozostaje widoczna, dopóki nie zostanie wyłączona.
Kryterium 10.14. Czy na każdej stronie internetowej dodatkowe treści odsłaniane przez style CSS mogą być wyświetlane tylko po przeniesieniu na komponent interfejsu fokusu klawiatury lub kursora dowolnego urządzenia wskazującego?
-
Test 10.14.1 :
Czy na każdej stronie internetowej dodatkowa treść odsłaniana przez style CSS po najechaniu kursorem myszy na komponent interfejsu spełnia, jeśli to konieczne, jeden z tych warunków?
Dodatkowa treść pojawia się również po aktywacji komponentu za pomocą klawiatury i dowolnego urządzenia wskazującego.
Dodatkowa treść pojawia się również po przeniesieniu fokusu klawiatury na komponent.
Dodatkowa treść pojawia się również po aktywacji lub przeniesieniu fokusu klawiatury na inny komponent.
-
Test 10.14.2 :
Czy na każdej stronie internetowej dodatkowa treść odsłaniana przez style CSS po przeniesieniu fokusu klawiatury na komponent interfejsu spełnia, jeśli to konieczne, jeden z tych warunków?
Dodatkowa treść pojawia się również po aktywacji komponentu za pomocą klawiatury i dowolnego urządzenia wskazującego.
Dodatkowa treść pojawia się również, po najechaniu kursorem myszy na komponent.
Dodatkowa treść pojawia się również po aktywacji lub najechaniu kursorem myszy na inny komponent.
11. Formularze
Kryterium 11.1. Czy każde pole formularza ma etykietę?
-
Test 11.1.1 :
Czy każde pole formularza spełnia jeden z tych warunków?
Pole formularza ma atrybut
aria-labelledby
odnoszący się do określonego fragmentu tekstu.Pole formularza ma atrybut
aria-label
.Znacznik
label
z atrybutemfor
jest powiązany z polem formularza.Pole formularza ma atrybut
title
.Przycisk obok pola formularza ma widoczną etykietę, a atrybuty
aria-label
,aria-labelledby
lubtitle
zapewniają mu dostępną nazwę.
-
Test 11.1.2 :
Czy każde pole formularza powiązane z etykietą (znacznik
label
z atrybutemfor
) spełnia te warunki?Pole formularza ma atrybut
id
.Wartość atrybutu
for
jest równa wartości atrybutuid
powiązanego pola formularza.
-
Test 11.1.3 :
Czy każde pole formularza z etykietą, której treść nie jest widoczna (ukryta albo podana za pomocą
aria-label
,aria-labelledby
) lub nie znajduje się w pobliżu, spełnia jeden z tych warunków?Pole formularza ma atrybut
title
, którego treść umożliwia zrozumienie charakteru oczekiwanych danych wejściowych.Do pola formularza dołączony jest fragment tekstu, który staje się widoczny po przeniesieniu na pole fokusu, co pozwala zrozumieć opis charakteru oczekiwanych danych wejściowych.
Pole formularza ma widoczny tekst przylegający do pola, który umożliwia zrozumienie charakteru oczekiwanych danych wejściowych.
Kryterium 11.2. Czy każda etykieta powiązana z polem formularza jest odpowiednia (z wyjątkiem przypadków szczególnych)?
-
Test 11.2.1 :
Czy każda etykieta (znacznik
label
) umożliwia zrozumienie dokładnej funkcji pola formularza, z którym jest powiązana?]{#test-11-2-1} -
Test 11.2.2 :
Czy każdy atrybut
title
pozwala zrozumieć dokładną funkcję pola formularza, z którym jest powiązany? -
Test 11.2.3 :
Czy każda etykieta podana za pomocą
aria-label
) umożliwia zrozumienie dokładnej funkcji pola formularza, z którą jest powiązana? -
Test 11.2.4 :
Czy każda etykieta skojarzona za pomocą atrybutu
aria-labelledby
umożliwia zrozumienie dokładnej funkcji pola formularza, z którym jest powiązana? -
Test 11.2.5 :
Czy każde pola formularza z widoczną etykietą spełnia te warunki (z wyjątkiem przypadków szczególnych)?
Jeśli istnieje, treść atrybutu
aria-label
w postaci pola zawiera co najmniej widoczną etykietę.Jeśli istnieje, fragment tekstu powiązany z polem formularza za pomocą atrybutu
aria-labelledby
zawiera co najmniej widoczną etykietę.Jeśli istnieje, treść atrybutu
title
pola formularza zawiera co najmniej widoczną etykietę.Jeśli istnieje, treść znacznika
label
powiązanego z polem formularza zawiera co najmniej widoczną etykietę.
-
Test 11.2.6 :
Czy każdy przycisk sąsiadujący z polem formularza, który zapewnia widoczną etykietę, pozwala zrozumieć dokładną funkcję powiązanego z nim pola formularza?
Kryterium 11.3. Czy w każdym formularzu, każda etykieta powiązana z polem formularza mającym tę samą funkcję i powtarzanym wielokrotnie na tej samej stronie lub zestawie stron jest spójna?
-
Test 11.3.1 :
Czy każda etykieta powiązana z polem formularza mającym tę samą funkcję i powtórzonym wiele razy na tej samej stronie, jest spójna?
-
Test 11.3.2 :
Czy każda etykieta powiązana z polem formularza mającym tę samą funkcję i powtórzonym w zestawie stron, jest spójna?
Kryterium 11.4. Czy w każdym formularzu, każda etykieta pola i powiązane z nią pole są umieszczone obok siebie (z wyjątkiem przypadków szczególnych)?
-
Test 11.4.1 :
Czy w każdym formularzu, każda etykieta pola i powiązane z nią pole są umieszczone obok siebie?
-
Test 11.4.2 :
Czy każda etykieta umieszczona obok pola formularza (oprócz pola wyboru, przycisku opcji lub elementów posiadających
role="checkbox"
,role="radio"
lubrole="switch"
) spełnia następujące warunki (z wyjątkiem przypadków szczególnych)?Etykieta jest umieszczana wizualnie bezpośrednio po lewej stronie lub powyżej pola formularza, gdy jej kierunek odczytu jest od lewej do prawej.
Etykieta jest umieszczana wizualnie bezpośrednio po prawej stronie lub nad polem formularza, gdy jej kierunek odczytu jest od prawej do lewej.
-
Test 11.4.3 :
Każda etykieta umieszczona obok pola typu
checkbox
lubradio
albo elementów posiadających atrybutyrole="checkbox"
,role="radio"
lubrole="switch"
spełnia następujące warunki (z wyjątkiem przypadków szczególnych)?Etykieta jest umieszczana wizualnie bezpośrednio po lewej stronie lub powyżej pola formularza, gdy jej kierunek odczytu jest od lewej do prawej.
Etykieta jest umieszczana wizualnie bezpośrednio po prawej stronie lub nad polem formularza, gdy jej kierunek odczytu jest od prawej do lewej.
Kryterium 11.5. Czy w każdym formularzu podobne pola są pogrupowane, jeśli to konieczne?
-
Test 11.5.1 :
Czy w każdym formularzu podobne pola spełniają jeden z tych warunków?
Podobne pola są zgrupowane w znaczniku
<fieldset>
.Podobne pola są zgrupowane w znaczniku z atrybutem
role="group"
Pola tego samego typu radio (
input type="radio"
lub znaczniki z atrybutamirole="radio"
) są zgrupowane w znaczniku z atrybutemrole="radiogroup"
lubrole="group"
Kryterium 11.6. Czy w każdym formularzu każda grupa pól formularza ma legendę?
Kryterium 11.7. Czy w każdym formularzu każda legenda powiązana z grupą pól formularza jest odpowiednia?
-
Test 11.7.1 :
Czy w każdym formularzu każda legenda powiązana z grupą pól formularza jest odpowiednia?
Kryterium 11.8. Czy w każdym formularzu elementy tego samego rodzaju na liście wyboru są pogrupowane w odpowiedni sposób?
-
Test 11.8.1 :
Czy w każdym formularzu, dla każdego znacznika
select
elementy tego samego rodzaju są pogrupowane przy pomocy znacznikaoptgroup
, jeśli to konieczne? -
Test 11.8.2 :
Czy w każdym znaczniku
select
każdy znacznikoptgroup
ma atrybutlabel
?} -
Test 11.8.3 :
Czy dla każdego znacznika
optgroup
z atrybutemlabel
, treść atrybutulabel
jest odpowiednia?
Uwagi
Możliwe jest użycie znacznika, którego atrybut role="listbox"
zastąpi znacznik select
. Nie jest jednak możliwe tworzenie grup opcji przy pomocy WAI-ARIA. Dlatego lista, która wymaga zebrania opcji w grupach i zbudowana przy pomocy znacznika z atrybutem role="listbox"
, zostanie uznana za niezgodną z Kryterium 11.8
Kryterium 11.9. Czy w każdym formularzu tytuł każdego przycisku jest odpowiedni?
-
Test 11.9.1 :
Czy w każdym formularzu, tytuł każdego przycisku jest odpowiedni?
Jeśli istnieje, treść atrybutu
aria-label
jest odpowiednia.Jeśli istnieje, treść tekstu skojarzonego z przyciskiem za pomocą atrybutu
aria-labelledby
jest odpowiednia.Jeśli istnieje, treść atrybutu
value
znacznikainput type=...
"submit"
,"reset"
lub"button"
jest odpowiednia.Jeśli istnieje, treść znacznika
button
jest odpowiednia.Jeśli istnieje, treść atrybutu
alt
znacznikainput type="image"
jest odpowiednia.Jeśli istnieje, treść atrybutu
title
jest odpowiednia.
-
Test 11.9.2 :
Czy każdy przycisk z widoczną etykietą spełnia te warunki (z wyjątkiem przypadków szczególnych)?
Jeśli istnieje, treść atrybutu
aria-label
, zawiera co najmniej widoczną etykietę.Jeśli istnieje, treść tekstu skojarzonego z przyciskiem za pomocą atrybutu
aria-labelledby
, zawiera co najmniej widoczną etykietę.Jeśli istnieje, treść atrybutu
value
znacznikainput type=...
"submit"
,"reset"
lub"button"
, zawiera co najmniej widoczną etykietę.Jeśli istnieje, treść znacznika
button
, zawiera co najmniej widoczną etykietę.Jeśli istnieje, treść atrybutu
title
zawiera co najmniej widoczną etykietę.Jeśli istnieje, treść atrybutu
alt
znacznikainput type="image"
, zawiera co najmniej widoczną etykietę.Jeśli istnieje, treść atrybutu
title
, zawiera co najmniej widoczną etykietę.
Kryterium 11.10. Czy w każdym formularzu sprawdzanie poprawności danych jest stosowane w odpowiedni sposób?
-
Test 11.10.1 :
Czy dla każdego formularza wskazanie obowiązkowych pól spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Wskazanie pola obowiązkowego jest widoczne oraz pozwala zidentyfikować dane pole przed walidacją formularza.
Pole obowiązkowe ma atrybut
aria-required="true"
lub atrybutrequired
, wskazujący, że wartość w polu przed zatwierdzeniem formularza nie może być pusta.
-
Test 11.10.2 :
Czy pola obowiązkowe z atrybutem
aria-required="true"
lubrequired
spełniają jeden z tych warunków?Wskazanie pola obowiązkowego jest widoczne i umieszczone na powiązanej z polem etykiecie oraz pozwala zidentyfikować dane pole przed walidacją formularza.
Wskazanie pola obowiązkowego jest widoczne i umieszczone w tekście powiązanym z polem oraz pozwala zidentyfikować dane pole przed walidacją formularza.
-
Test 11.10.3 :
Czy komunikaty o błędach wprowadzania danych wskazujące na brak wpisu w polu obowiązkowym spełniają jeden z tych warunków?
Komunikat o błędzie jest widoczny i umożliwia określenie pola, którego dotyczy, po nazwie.
Pole obowiązkowe ma atrybut
aria-invalid="true"
.
-
Test 11.10.4 :
Czy każde obowiązkowe pole z atrybutem
aria-invalid="true"
spełnia jeden z tych warunków?Wskazanie pola obowiązkowego jest widoczne i umieszczone na etykiecie związanej z polem
Wskazanie pola obowiązkowego jest widoczne i umieszczone w powiązanym z polem fragmencie tekstu.
-
Test 11.10.5 :
Czy każda instrukcja i podany typ lub format danych spełnia jeden z tych warunków?
Instrukcja i wskazanie typu lub formatu danych są widoczne oraz pozwalają zidentyfikować dane pole formularza przed walidacją formularza.
Wskazanie typu lub formatu danych jest widoczne i umieszczone w tekście powiązanym z polem oraz pozwala zidentyfikować dane pole przed walidacją formularza.
-
Test 11.10.6 :
Czy każdy komunikat o błędzie wskazujący typ danych lub obowiązkowy format pól spełnia jeden z tych warunków?
Komunikat o błędzie wskazujący typ lub obowiązkowy format danych jest widoczny i wskazuje błędnie wypełnione pole formularza.
Pole formularza ma atrybut
aria-invalid="true"
.
-
Test 11.10.7 :
Czy pola z atrybutem
aria-invalid="true"
, które wymagają określonego typu lub formatu danych, spełniają jeden z tych warunków?Wskazanie typu lub obowiązkowego formatu danych jest widoczne i jest umieszczone w znaczniku etykiety powiązanej z polem formularza.
Wskazanie typu lub obowiązkowego formatu danych jest widoczne i jest umieszczone w tekście powiązanym z polem formularza.
Uwagi
W długim formularzu, w którym większość pól jest obowiązkowa, może się okazać, że to właśnie nieliczne pozostałe pola opcjonalne są wyraźnie oznaczone jako takie. W tym przypadku należy zapewnić, że:
Komunikat w górnej części formularza wizualnie stwierdza, że „wszystkie pola są wymagane, z wyjątkiem tych oznaczonych jako opcjonalne”.
W treści pól „niewymaganych” lub w legendzie grupy pól „niewymaganych” znajduje się widoczne oznaczenie np. „niewymagane”.
Atrybut
required
lubaria-required="true"
pozostaje związany z każdym polem, na które nie ma wpływu ta opcjonalność.
Kryterium 11.11. Czy w każdym formularzu kontrola wprowadzania jest wsparta, jeśli to konieczne, sugestiami ułatwiającymi poprawę błędów wprowadzania?
-
Test 11.11.1 :
Czy dla każdego formularza, dla każdego błędu wprowadzania, sugerowane są typy i formaty danych, jeśli to konieczne?
-
Test 11.11.2 :
Czy dla każdego formularza, dla każdego błędu wprowadzania, sugerowane są oczekiwane wartości, jeśli to konieczne?
Uwagi
Niektóre typy formularzy HTML5 oferują automatyczne komunikaty z pomocą, na przykład typ email
wyświetla komunikat w rodzaju „proszę wprowadzić poprawny adres e-mail”, gdy podany adres e-mail nie odpowiada oczekiwanemu formatowi. Komunikaty można dostosowywać za pomocą API Constraint Validation, które umożliwia dostosowanie komunikatów błędów i weryfikować kryteria. Atrybut pattern
, który pozwala przeprowadzić automatycznie kontrolę formatu (przy pomocy wyrażeń regularnych), wyświetla również komunikat o pomocy, który można dostosować przy pomocy atrybutu title
; ten mechanizm również spełnia to kryterium.
Referencja: WHATWG - 4.10.21.3 The constraint validation API.
Kryterium 11.12. Czy każdy formularz, który modyfikuje lub usuwa dane, albo który przesyła odpowiedzi do testu lub egzaminu, albo którego poprawność ma konsekwencje finansowe lub prawne, spełnia jeden z tych warunków?
-
Test 11.12.1 :
Czy każdy formularz, który modyfikuje lub usuwa dane albo który przesyła odpowiedzi do testu lub egzaminu, albo którego poprawność ma konsekwencje finansowe lub prawne, spełnia jeden z tych warunków?
Użytkownik może zmodyfikować lub anulować dane i czynności wykonane na tych danych po ich wprowadzaniu i sprawdzeniu poprawności formularza.
Użytkownik może sprawdzić i poprawić dane przez zatwierdzeniem formularza w kilku krokach.
Istnieje jawny mechanizm potwierdzania w postaci pola wyboru (znacznik
<input>
typucheckbox
lub znacznik z atrybutemrole="checkbox"
) lub dodatkowy krok.
-
Test 11.12.2 :
Czy każdy formularz, który modyfikuje lub usuwa dane o charakterze finansowym, prawnym lub osobistym, spełnia jeden z tych warunków?
Mechanizm pozwala odzyskać dane usunięte lub zmodyfikowane przez użytkownika.
Istnieje jawny mechanizm żądający wyraźnego potwierdzenia usunięcia lub modyfikacji za pomocą pola formularza lub dodatkowego kroku.
Kryterium 11.13. Czy można określić przeznaczenie pól formularza, aby ułatwić automatyczne wypełnianie pól danymi użytkownika?
-
Test 11.13.1 :
Czy każde pole formularza, które zbiera dane o użytkowniku, spełnia te warunki?
Pole formularza ma atrybut
autocomplete
.Atrybut
autocomplete
ma poprawną wartość spośród określonych na liście możliwych wartości atrybutuautocomplete
powiązanych z polem formularza.Wartość wskazana w atrybucie
autocomplete
jest odpowiednia w odniesieniu do oczekiwanego typu informacji.
Uwagi
Lista możliwych wartości dla atrybutu autocomplete
zależy od listy wartości znajdujących się w specyfikacji WCAG 2.1, które z kolei są powiązane z listą wartości atrybutu type
pola input
w specyfikacji HTML5.2. Kryterium WCAG wymaga jednej z tych wartości, aby kwalifikować pole formularza jako pole dotyczące użytkownika.
Kryterium WCAG daje do dyspozycji różne możliwe zasady konstrukcyjne dla uzyskania wartości (prostej lub złożonej) dla atrybutu autocomplete
. Jednak w świetle algorytmu określonego w specyfikacji HTML5.2 programista może podać dla atrybutu autocomplete
wartość lub zestaw poprawnych wartości. Tak więc atrybut autocomplete
może zawierać jako wartość tylko jedną nazwę typu pola, np. name
lub street-address
. Możliwe jest również określenie zestawu składającego się z różnych wartości, takich jak na przykład autocomplete="shipping name"
lub autocomplete="section-software shipping street-address"
: section-software
odnosi się do odnosi się do typu zakresu wartości i shipping
wskazuje na typ wartości, ale zawsze odnoszą się tylko do pojedynczego pola.
12. Nawigacja
Kryterium 12.1. Czy każdy zestaw stron zawiera co najmniej dwa różne systemy nawigacji (z wyjątkiem przypadków szczególnych)?
-
Test 12.1.1 :
Czy każdy zestaw stron spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Istnieją menu nawigacyjne i mapa witryny.
Istnieją menu nawigacyjne i wyszukiwarka.
Istnieją wyszukiwarka i mapa witryny.
Kryterium 12.2. Czy w każdym zestawie stron menu i paski nawigacji są zawsze w tym samym miejscu (z wyjątkiem przypadków szczególnych)?
-
Test 12.2.1 :
Czy w każdym zestawie stron każda strona, która ma menu lub paski nawigacji, spełnia te warunki (z wyjątkiem przypadków szczególnych)?
Menu i paski nawigacji są zawsze w tym samym miejscu na prezentacji.
Menu i paski nawigacyjne występuje zawsze w tym samym porządku w kodzie źródłowym.
Kryterium 12.3. Czy strona „mapa witryny” jest odpowiednia?
-
Test 12.3.1 :
Czy strona „mapa witryny” odzwierciedla ogólną architekturę witryny?
-
Test 12.3.2 :
Czy łącza na stronie „mapa witryny” działają?
-
Test 12.3.3 :
Czy łącza na stronie „mapa witryny” odsyłają do wskazywanych stron?
Kryterium 12.4. Czy w każdym zestawie stron strona „mapa witryny” jest osiągalna w taki sam sposób?
-
Test 12.4.1 :
Czy na każdej stronie w zestawie stron strona „mapa witryny” ma taką samą funkcjonalnością?
-
Test 12.4.2 :
Czy na każdej stronie w zestawie stron łącze do strony „mapa witryny” jest umieszczone zawsze w tym samym miejscu prezentacji?
-
Test 12.4.3 :
Czy na każdej stronie w zestawie stron łącze do [strony „mapa witryny”(/slowniczek-rgaa#stronaMapaWitryny) pojawia się zawsze w tej samej względnej kolejności w kodzie źródłowym?
Kryterium 12.5. Czy w każdym zestawie stron wyszukiwarka jest osiągalna w taki sam sposób?
-
Test 12.5.1 :
Czy na każdej stronie w zestawie stron, wyszukiwarka ma taką samą funkcjonalność?
-
Test 12.5.2 :
Czy na każdej stronie w zestawie stron łącze do wyszukiwarki znajduje się zawsze w tym samym miejscu na prezentacji?
-
Test 12.5.3 :
Czy na każdej stronie w zestawie stron łącze do wyszukiwarka pojawia sie zawsze w tej samej względnej kolejności w kodzie źródłowym?
Kryterium 12.6. Czy na każdej stronie internetowej kluczowe obszary (obszar nagłówka witryny, obszar głównej nawigacji, obszar treści głównej, obszar stopki witryny, obszar wyszukiwarki) mogą być zidentyfikowane, osiągane i pomijane?
-
Test 12.6.1 :
Czy na wszystkich stronach internetowych, na których znajdują się kluczowe obszary (obszar nagłówka witryny, obszar głównej nawigacji, obszar treści głównej, obszar stopki witryny, obszar wyszukiwarki), spełniają one co najmniej jeden z tych warunków:
Obszar kluczowy spełnia rolę punktu orientacyjnego zgodnego (korespondującego) z jego charakterem
Obszar ma nagłówek (hierarchiczny), którego treść umożliwia zrozumienie charakteru treści obszaru.
Obszar można ukryć za pomocą przycisku umieszczonego w kodzie w kolejności bezpośrednio poprzedzającej kod obszaru.
Obszar można pominąć za pomocą łącza pomijającego umieszczonego w kodzie w kolejności bezpośrednio poprzedzającej kod obszaru.
Do obszaru można dotrzeć za pomocą łącza szybkiego dostępu widocznego podczas przemieszczania się za pomocą tabulatora.
Kryterium 12.7. Czy na każdej stronie są łącza pomijające powtarzalne bloki treści lub łącze szybkiego dostępu do obszaru treści głównej (z wyjątkiem przypadków szczególnych)?
-
Test 12.7.1 :
Czy na każdej stronie internetowej są łącza pomijające powtarzalne bloki treści lub łącze prowadzące do obszaru treści głównej (z wyjątkiem przypadków szczególnych)?
-
Test 12.7.2 :
Czy w każdym zestawie stron łącza pomijające lub łącza szybkiego dostępu spełniają te warunki (z wyjątkiem przypadków szczególnych)?
Każde łącze jest zawsze w tym samym miejscu na prezentacji.
Każde łącze występuje zawsze w tym samym porządku w kodzie źródłowym.
Każde łącze jest widoczne co najmniej po oznaczeniu fokusem klawiatury.
Kryterium 12.8. Czy na każdej stronie internetowej kolejność tabulacji jest zrozumiała?
-
Test 12.8.1 :
Czy na każdej stronie internetowej kolejność tabulacji po treści jest zrozumiała?
-
Test 12.8.2 :
Czy w każdym skrypcie, który aktualizuje lub wprowadza treść, kolejność tabulacji pozostaje zrozumiała?
Kryterium 12.9. Na żadnej stronie internetowej nawigacja nie może zawierać pułapki na klawiaturę. Czy ta zasada jest przestrzegana?
-
Test 12.9.1 :
Czy dla każdej strony internetowej każdy element oznaczony fokusem spełnia jeden z tych warunków?
Można uzyskać dostęp do następnego lub poprzedniego elementu, który może być oznaczony fokusem klawiszem tabulacji.
Użytkownik jest poinformowany o mechanizmie działania umożliwiającym uzyskanie za pomocą klawiatury dostępu do następnego lub poprzedniego elementu, który może być oznaczony fokusem.
Kryterium 12.10. Czy na każdej stronie internetowej użytkownik może kontrolować każdy skrót klawiaturowy tylko za pomocą jednego klawisza (mała lub duża litera, znak interpunkcyjny, cyfra lub symbol)?
-
Test 12.10.1 :
Czy na każdej stronie internetowej każdy skrót klawiaturowy wykorzystujący tylko jeden klawisz (mała lub duża litera, znak interpunkcyjny, cyfra lub symbol) spełnia jeden z tych warunków?
Istnieje mechanizm wyłączania skrótu klawiaturowego.
Istnieje mechanizm do konfigurowania skrótu klawiaturowego za pomocą klawiszy modyfikatorów (Ctrl, Alt, Shift itp.).
W przypadku komponentu interfejsu użytkownika skojarzony z nim skrót klawiaturowy można aktywować tylko wtedy, gdy komponent uzyska fokus klawiatury.
Kryterium 12.11. Czy na każdej stronie internetowej dodatkowa treść, która pojawia się po najechaniu kursorem, uzyskaniu fokusu klawiatury lub aktywacji elementu interfejsu, jeśli to konieczne, jest dostępna za pomocą klawiatury?
-
Test 12.11.1 :
Czy na każdej stronie internetowej dodatkowa treść, która pojawia się po najechaniu kursorem, uzyskaniu fokusu klawiatury lub aktywacji komponentu interfejsu, jeśli to konieczne, jest dostępna za pomocą klawiatury?
Uwagi
To kryterium dotyczy sytuacji, w których dodatkowa treść zawiera komponenty interfejsu, z którymi musi być możliwa interakcja za pomocą klawiatury. Na przykład dostosowana etykieta, która zawiera w treści łącze.
13. Przeglądanie
Kryterium 13.1. Czy na każdej stronie internetowej użytkownik ma kontrolę nad każdym limitem czasu przeznaczonego na modyfikację treści (z wyjątkiem przypadków szczególnych)?
-
Test 13.1.1 :
Czy dla każdej strony internetowej każdy proces odświeżania lub automatycznego przekierowania (znacznik
object
, znacznikembed
, znaczniksvg
, znacznikcanvas
, znacznik meta) spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?Użytkownik może zatrzymać i ponownie uruchomić odświeżanie.
Użytkownik może zwiększyć limit czasowy między dwoma odświeżeniami co najmniej dziesięciokrotnie.
Użytkownik jest ostrzegany o zbliżającym się odświeżaniu i ma co najmniej dwadzieścia sekund, aby zwiększyć limit czasu przed przyszłym odświeżeniem.
Limit czasu między dwoma odświeżeniami wynosi co najmniej dwadzieścia godzin.
-
Test 13.1.2 :
Czy dla każdej strony internetowej każdy proces przekierowania wykonana przy pomocy znacznika
meta
jest natychmiastowa (z wyjątkiem przypadków szczególnych)? -
Test 13.1.3 :
Czy dla każdej strony internetowej każdy proces przekierowania wykonana przy pomocy skryptu spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Użytkownik może zatrzymać i ponownie uruchomić przekierowanie.
Użytkownik może zwiększyć limit czasowy między dwoma przekierowaniami co najmniej dziesięciokrotnie.
Użytkownik jest ostrzegany o zbliżającym się przekierowaniu i ma co najmniej dwadzieścia sekund, aby zwiększyć limit czasu przed przyszłym przekierowaniem.
-
Test 13.1.4 :
Czy dla każdej strony internetowej każdy proces ograniczająca czas sesji spełnia jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Użytkownik może usunąć limit czasowy.
Użytkownik może zwiększyć limit czasowy.
Limit czasu przed zakończeniem sesji wynosi co najmniej dwadzieścia godzin.
Kryterium 13.2. Na żadnej stronie internetowej otwarcie nowego okna nie może nastąpić bez działania użytkownika. Czy ta zasada jest przestrzegana?
-
Test 13.2.1 :
Na żadnej stronie internetowej otwarcie nowego okna nie może nastąpić bez działania użytkownika. Czy ta zasada jest przestrzegana?
Kryterium 13.3. Czy na każdej stronie internetowej każdy dokument biurowy do pobrania ma, jeśli to konieczne, dostępną wersję (z wyjątkiem przypadków szczególnych)?
-
Test 13.3.1 :
Czy dla każdej strony internetowej każda funkcjonalność pobierania elektronicznego dokumentu biurowego spełnia jeden z tych warunków?
Pobierany dokument jest kompatybilny z dostępnością.
Istnieje wersja alternatywna pobieranego dokumentu kompatybilna z dostępnością.
Istnieje wersja alternatywna pobieranego dokumentu w dostępnym formacie HTML.
Kryterium 13.4. Czy dla każdego dokumentu elektronicznego, który ma dostępną wersję, wersja ta zawiera te same informacje?
-
Test 13.4.1 :
Czy każdy elektroniczny dokument biurowy, który ma dostępną wersję, spełnia jeden z tych warunków?
Wersja kompatybilna z dostępnością oferuje te same informacje.
Wersja alternatywna w formacie HTML jest odpowiednia i zapewnia te same informacje.
Kryterium 13.5. Czy na każdej stronie internetowej każda zaszyfrowana treść (ASCII art, emotikony, zaszyfrowany tekst) ma alternatywę?
-
Test 13.5.1 :
Czy na każdej stronie internetowej każda zaszyfrowana treść (ASCII art, emotikony, zaszyfrowany tekst) spełnia jeden z tych warunków?
Istnieje atrybut
title
.Definicja jest podana przez powiązany kontekst.
Kryterium 13.6. Czy na wszystkich stronach w przypadku każdej zaszyfrowana treść (ASCII art, emotikony, zaszyfrowany tekst), która ma alternatywę, ta alternatywa jest odpowiednia?
-
Test 13.6.1 :
Czy na każdej stronie internetowej każda zaszyfrowana treść (ASCII art, emotikony, zaszyfrowany tekst) spełnia jeden z tych warunków?
Treść atrybutu
title
jest odpowiednia.Definicja podana przez powiązany kontekst jest odpowiednia.
Kryterium 13.7. Czy na każdej stronie internetowej nagłe zmiany luminancji lub efekty błyskowe są poprawnie używane?
-
Test 13.7.1 :
Czy na każdej stronie internetowej każdy obraz (znacznik
img
, znaczniksvg
, znacznikcanvas
, znacznikembed
lub znacznikobject
), który powoduje nagłą zmianę luminancji lub efekty błyskowe, spełnia jeden z tych warunków?Częstotliwość efektu jest mniejsza niż 3 na sekundę.
Łączna całkowita powierzchnia efektów jest mniejsza lub równa 21 824 pikseli.
-
Test 13.7.2 :
Czy na każdej stronie internetowej każdy skrypt, który powoduje nagłą zmianę luminancji lub efekty błyskowe, spełnia jeden z tych warunków?
Częstotliwość efektu jest mniejsza niż 3 na sekundę.
Łączna całkowita powierzchnia efektów jest mniejsza lub równa 21 824 pikseli.
-
Test 13.7.3 :
Czy na każdej stronie internetowej każde formatowanie CSS, które powoduje nagłą zmianę luminancji lub efekty błyskowe spełnia jeden z tych warunków?
Częstotliwość efektu jest mniejsza niż 3 na sekundę.
Łączna całkowita powierzchnia efektów jest mniejsza lub równa 21 824 pikseli.
Kryterium 13.8. Czy na każdej stronie internetowej użytkownik może kontrolować każdą animowaną lub migającą treść?
-
Test 13.8.1 :
Czy dla każdej strony internetowej w ruchu, uruchamianej automatycznie, każdy element oznaczony spełnia jeden z tych warunków?
Czas trwania ruchu jest mniejszy lub równy 5 sekundom.
Użytkownik może zatrzymać i ponownie włączyć ruch.
Użytkownik może zatrzymać i ukryć treści ruchome treści.
Użytkownik może wyświetlić wszystkie informacje bez ruchu.
-
Test 13.8.2 :
Czy każda migająca treść, uruchamiana automatycznie, spełnia jeden z tych warunków?
Czas migania jest mniejszy lub równy 5 sekundom.
Użytkownik może zatrzymać i ponownie włączyć miganie.
Użytkownik może zatrzymać i ukryć migające treści.
Użytkownik może wyświetlić wszystkie informacje bez migania.
Kryterium 13.9. Czy na każdej stronie internetowej można przeglądać proponowaną treść niezależnie od orientacji ekranu (pionowej lub poziomej) (z wyjątkiem przypadków szczególnych)?
-
Test 13.9.1 :
Czy na każdej stronie internetowej każda treść spełnia te warunki (z wyjątkiem przypadków szczególnych)?
Przeglądanie jest możliwe niezależnie od orientacji ekranu.
Treść nie zmienia się niezależnie od orientacji ekranu, chociaż prezentacja i sposób dotarcia do niej mogą się różnić.
Kryterium 13.10. Czy na każdej stronie internetowej z funkcji używanych lub dostępnych za pomocą złożonego gestu można korzystać również za pomocą prostego gestu (z wyjątkiem przypadków szczególnych)?
-
Test 13.10.1 :
Czy na każdej stronie internetowej każda funkcjonalność, której można użyć lub jest dostępna za pomocą złożonego gestu, może być również użyta lub jest dostępna za pomocą prostego gestu w jednym punkcie na ekranie (z wyjątkiem przypadków szczególnych)?
-
Test 13.10.2 :
Czy na każdej stronie internetowej każda funkcjonalność, której można użyć lub jest dostępna za pomocą gestu opartego na ścieżce na ekranie, może być również użyta lub jest dostępna za pomocą za pomocą prostego gestu w jednym punkcie na ekranie (z wyjątkiem przypadków szczególnych)?
Kryterium 13.11. Czy na każdej stronie internetowej można anulować działania uruchamiane urządzeniem wskazującym (wskaźnik myszy, dotyk palcem, rysikiem) w interaktywnym punkcie ekranu (z wyjątkiem przypadków szczególnych)?
-
Test 13.11.1 :
Czy na każdej stronie internetowej działania uruchamiane urządzeniem wskazującym (mysz, dotyk, stuknięcie) w interaktywnym punkcie ekranu spełniają jeden z tych warunków (z wyjątkiem przypadków szczególnych)?
Działanie jest uruchamiane po zwolnieniu wskaźnika;
Działanie jest uruchamiane po wciśnięciu wskaźnika i natychmiast anulowne po zwolnieniu wskaźnika;
Dostępny jest mechanizm rezygnacji z działania (przed jego zakończeniem) lub anulowania działania (po zakończeniu).
Uwagi
Dwa przykłady mechanizmu anulowania lub przerwania akcji wywołanej przez pojedynczy punkt na ekranie:
Okno modalne umożliwiające anulowanie akcji po jej zakończeniu;
W przypadku funkcji przeciągania i upuszczania fakt, że działanie jest przerywane, jeśli użytkownik wypuści element poza obszar docelowy.
Kryterium 13.12. Czy na każdej stronie internetowej funkcjonalności wymagające ruchu urządzenia lub gestu użytkownika można wykonać w alternatywny sposób (z wyjątkiem przypadków szczególnych)?
-
Test 13.12.1 :
Czy na każdej stronie internetowej funkcjonalności wymagające ruchu urządzenia lub gestu użytkownika można również wykonać za pomocą elementów interfejsu użytkownika (z wyjątkiem przypadków szczególnych)?
-
Test 13.12.2 :
Czy na każdej stronie internetowej funkcjonalności wymagające gestu użytkownika można również wykonać za pomocą elementów interfejsu użytkownika (z wyjątkiem przypadków szczególnych)?
-
Test 13.12.3 :
Czy użytkownik może wyłączyć funkcję wykrywania ruchu, aby zapobiec przypadkowemu uruchamianiu funkcjonalności (z wyjątkiem przypadków szczególnych)?