WCAG 2.1 A ja AA testleht

Lehel on alles jäetud peamiselt automaatseks või hübriidseks testimiseks sobivad edukriteeriumid. Manuaalselt testitavaks märgitud kriteeriumid on sellest versioonist eemaldatud.

Kuidas seda kasutada?

Iga plokk sisaldab head ja halba näidet. Kõik plokid on vaikimisi avatud, et automaatsed tööriistad näeksid võimalikult palju testitavat sisu.

Mõne leheülese kriteeriumi puhul on kasutatud iframe-näidet, sest ühel HTML-lehel ei saa korraga olla nii korrektne kui vigane title või lang.

1. Tajutav

1.1.1 Non-text Content
Hea näide
Tartu raekoja plats päikeseloojangu ajal

Dekoratiivpildil on tühi alt-atribuut.

Halb näide

Pildil puudub alt-atribuut.

1.3.1 Info and Relationships
Hea näide
Eelistatud kontaktiviis
Lahtiolekuajad
Päev Aeg
Esmaspäev 09:00–17:00
Halb näide
Nimi
Päev Aeg
Esmaspäev 09:00–17:00

Silt, väljarühma seos ja tabeli päised puuduvad või on semantika eemaldatud.

1.3.2 Meaningful Sequence
Hea näide

1. Samm

Vali teenus.

2. Samm

Sisesta andmed.

Visuaalne järjekord ja DOM-i järjekord kattuvad.

Halb näide

2. Samm

HTML-is esimene, aga visuaalselt teine.

1. Samm

HTML-is teine, aga visuaalselt esimene.

CSS order muudab nähtavat järjekorda, kuid ekraaniluger loeb DOM-i järjekorras.

1.3.5 Identify Input Purpose
Hea näide

Sisendite eesmärk on programmiliselt määratav sobivate autocomplete-atribuutide abil.

Halb näide

Väljade eesmärk on nähtav, kuid programmiliselt pole sobivate autocomplete-väärtustega määratud.

1.4.3 Kontrastsus (miinimumnõue)
Hea näide

Selle teksti kontrastsus on piisav.

Halb näide

Selle teksti kontrastsus on liiga nõrk.

1.4.4 Resize Text
Hea näide

Nupp suurendab ainult teksti 200%, mitte kogu plokki transformiga.

Paindlik tekstiplokk

See plokk võib kasvada kõrgusesse. Kui tekst suureneb, ei lõigata sisu ära.

Halb näide

Fikseeritud kõrgus ja overflow: hidden lõikavad suurendatud teksti ära.

Piiratud plokk

Kui tekst suureneb, siis osa sisust kaob kasti sisse ära ning kasutaja ei pruugi kogu sisu näha.

1.4.5 Images of Text
Hea näide

Erihind ainult täna

Tekst on päris tekstina, seega seda saab suurendada ja kohandada.

Halb näide
Erihind ainult täna

Tekst on pildi sees. Alt-tekst aitab mõista sisu, kuid tekst ise ei ole kasutaja jaoks päris tekstina kohandatav.

1.4.10 Reflow
Hea näide

Kitsas vaateaken: kaardid liiguvad üksteise alla.

Plokk A

Sisu kohandub.

Plokk B

Sisu kohandub.

Plokk C

Sisu kohandub.

Halb näide

Kitsas vaateaken: fikseeritud laiusega plokid tekitavad horisontaalse kerimise.

Plokk A

Sisu ei mahu.

Plokk B

Sisu ei mahu.

Plokk C

Sisu ei mahu.

1.4.11 Non-text Contrast
Hea näide

Nupu piir ja ikoon eristuvad taustast piisavalt.

Halb näide

Nupu piir ja ikoon ei eristu taustast piisavalt.

1.4.12 Text Spacing
Hea näide

Tekst jääb loetavaks ka siis, kui reavahe, sõnavahe ja tähevahe suurenevad.

Halb näide

Kui tekstivahed suurenevad, võib see fikseeritud kõrguse tõttu lõikuda või kattuda.

2. Kasutatav

2.1.1 Keyboard
Hea näide
Liigu jalusesse
Halb näide
Kliki hiirega

See näeb välja nagu nupp, kuid div ei ole vaikimisi klaviatuuriga kasutatav.

2.2.1 Timing Adjustable
Hea näide

Teade aegub, kuid kasutaja saab aega pikendada või ajalimiidi välja lülitada.

Ajalimiit pole käivitatud.
Halb näide

Teade kaob kindla aja möödudes ja kasutaja ei saa seda peatada, pikendada ega välja lülitada.

Ajalimiit pole käivitatud.
2.2.2 Pause, Stop, Hide
Hea näide

Liikuv tekst käivitub automaatselt, kuid kasutaja saab selle peatada ja uuesti käivitada.

Uudis 1Uudis 2Uudis 3Uudis 4Uudis 5 Uudis 1Uudis 2
Halb näide

Liikuv tekst käivitub automaatselt ja kasutaja ei saa seda peatada.

Uudis AUudis BUudis CUudis DUudis E Uudis AUudis B
2.4.1 Bypass Blocks
Hea näide

Lehe alguses on “Liigu põhisisu juurde” link ja põhisisu on märgitud main-elemendiga.

Halb näide
2.4.2 Page Titled
Hea näide

Käesoleval lehel on kirjeldav title-element:

<title>WCAG 2.1 A ja AA testleht – automaatne ja hübriidne testimine</title>

Pealkiri kirjeldab lehe eesmärki ja aitab kasutajal aru saada, millisel lehel ta asub.

Halb näide

Halb näide oleks tühi või liiga üldine lehe pealkiri:

<title></title>
<title>Avaleht</title>

Selline pealkiri ei kirjelda piisavalt lehe sisu ega eesmärki.

2.4.3 Focus Order
Hea näide

Fookus liigub loogilises järjekorras.

Halb näide

Positiivse tabindex-i tõttu on fookuse järjekord segane.

2.4.4 Link Purpose (In Context)
Halb näide

Click here

2.4.6 Headings and Labels
Hea näide

Konto seadistused

Halb näide

Info

Pealkiri ja silt on liiga üldised.

2.5.3 Label in Name
Hea näide
Halb näide

Visuaalne silt “Otsi” ei sisaldu ligipääsetavas nimes.

3. Mõistetav

3.1.1 Language of Page
Hea näide

Käesoleval lehel on lehe põhikeel määratud html-elemendil:

<html lang="et">

Keele määramine võimaldab ekraanilugeritel ja teistel abitehnoloogiatel valida õige häälduse ja keelepõhised reeglid.

Halb näide

Halb näide oleks leht, mille html-elemendil puudub lang-atribuut:

<html>

Kui lehe põhikeel ei ole määratud, ei pruugi abitehnoloogiad sisu õiges keeles esitada.

3.1.2 Language of Parts
Hea näide

Eestikeelses tekstis võib olla võõrkeelne osa: Terms and Conditions.

Halb näide

Eestikeelses tekstis on ingliskeelne osa märgenduseta: Terms and Conditions.

3.3.1 Error Identification
Hea näide

Viga: sisesta e-posti aadress kujul nimi@domeen.ee

Halb näide

Vale

Viga on tähistatud, kuid kasutajale ei selgitata, mis on valesti.

3.3.2 Labels or Instructions
Hea näide

Sisesta 11 numbrit ilma tühikuteta.

Halb näide

Püsiv silt ja juhis puuduvad; ainult placeholder ei ole piisav.

4. Toimiv

4.1.1 Parsing
Hea näide

Unikaalsed ID-d ja korrektselt seostatud sildid.

Halb näide

Siin on tegelik topelt-ID probleem DOM-is.

Katkist pesastust ei ole siia lisatud, sest brauser parandab selle sageli automaatselt. Topelt-ID on siiski masinloetav probleem.

4.1.2 Name, Role, Value
Hea näide

Nimi, roll ja olek on programmiliselt määratavad ning olek muutub vajutamisel.

Halb näide

Visuaalselt näeb see välja nagu nupp, aga semantiline roll, ligipääsetav nimi ja olek puuduvad.

4.1.3 Status Messages
Hea näide
Halb näide

Teade ilmub, kuid ekraanilugerile ei anta sellest automaatselt teada.