Sīkdatņu piekrišanas pieejamība: WCAG 2.2 atbilstība piekrišanas banerim
Sīkdatņu baners, kuru tastatūras lietotāji nevar aizvērt, ekrāna lasītāji nevar paziņot vai krāsu nesaskatīšanas traucējumu gadījumā nav salasāms, nav tikai slikta lietotāja pieredze — tas ir atbilstības kļūme divos frontos. Kopš Eiropas Pieejamības akts stājās spēkā 2025. gada jūnijā, komerciālo tīmekļvietņu piekrišanas saskarnes, kas apkalpo ES lietotājus, jāatbilst WCAG 2.1 AA līmenim, un 2026. gadam ir ļoti ieteicams WCAG 2.2. Apvienojumā ar GDPR prasību, ka piekrišanai jābūt "brīvprātīgi sniegtai, specifiskai, informētai un nepārprotamai", nepieejami baneri tagad rada divkāršu juridisko risku. Šī rokasgrāmata precīzi izskaidro, kā 2026. gadā izskatās WCAG atbilstīgs sīkdatņu baners.
Kāpēc pieejamība un piekrišana tagad pārklājas
GDPR prasa, lai piekrišanu varētu saņemt no katra lietotāja, ne tikai no tiem, kuri var redzēt un noklikšķināt uz banera. Eiropas Datu aizsardzības kolēģija ir precizējusi, ka tad, ja datu subjekts nevar jēgpilni mijiedarboties ar piekrišanas saskarni — invaliditātes dēļ, ko vietne nav ņēmusi vērā — piekrišana nav derīgi iegūta. Tas nozīmē, ka sīkdatnes vispār nebūtu bijis jāielādē.
Pieejamības jomā Eiropas Pieejamības akts (EAA), kas transponēts valstu tiesību aktos visās ES dalībvalstīs, nosaka WCAG 2.1 AA kā minimumu privātā sektora tīmekļvietnēm un lietotnēm, kas piedāvā patērētāju pakalpojumus. Sodu režīms atšķiras atkarībā no valsts, taču parasti svārstās no 50 000 līdz 500 000 eiro par pārkāpumu, kā arī tirgus izstāšanās rīkojumi par pastāvīgu neatbilstību.
Galvenās WCAG prasības sīkdatņu baneriem
Tastatūras darbspēja
Katrai banera vadīklai — Pieņemt, Noraidīt, Pārvaldīt preferences, aizvērt — jābūt sasniedzamai un darbināmai tikai ar tastatūru. Lietotājiem jāspēj izmantot Tab, lai pārvietotos starp pogām loģiskā secībā, un aktivizēt tās ar Enter vai Space. Fokusam jābūt redzamam ar minimālo 3:1 kontrasta attiecību pret fonu.
Fokusa aizturēšana modālajos baneros
Ja baners bloķē mijiedarbību ar pārējo lapu, tastatūras fokusam jābūt aizturētam banera iekšienē līdz brīdim, kad lietotājs izdara izvēli. Lietotājiem nedrīkst būt iespēja ar Tab nokļūt ārpus banera, lai ritinātu pamatlapu. Kad fokuss bija aizturēts un baners aizveras, fokusam jāatgriežas pie elementa, kas aktivizēja baneru, vai pie saprātīgas noklusētās vērtības.
Ekrāna lasītāja paziņojumi
Baners jāpaziņo kā dialogs ar pieejamu nosaukumu un lomu. Izmantojiet `role="dialog"` vai `role="alertdialog"` ar `aria-labelledby` norādot uz banera virsrakstu un `aria-describedby` norādot uz skaidrojošo tekstu.
Krāsu kontrasts
Pamattekstam jāatbilst 4,5:1 kontrastam pret fonu; lielam tekstam (18pt+ vai 14pt treknrakstā) nepieciešams 3:1. Pogu tekstam, ikonām un fokusa indikatoriem visiem ir savs kontrasta minimums. Gaiši pelēka poga "Noraidīt" uz balta fona ir biežs WCAG kļūmes gadījums, ko redzam auditos.
Nav tikai krāsu norādīšana
Nepaļaujieties tikai uz krāsu, lai atšķirtu Pieņemt no Noraidīt. Izmantojiet atšķirīgas etiķetes, ikonas vai formas, lai lietotāji ar krāsu aklumu varētu atšķirt pogas.
Tumšie modeļi un pieejamība
WCAG 2.2 ievieš jaunus kritērijus, kas tieši vērsti pret tumšajiem modeļiem — īpaši aktuāli attiecībā uz piekrišanu:
- 3.3.8 Pieejamā autentifikācija — aizliedz kognitīvos mīklas kā piekrišanas šķēršļus.
- 3.3.7 Liekā ievade — lietotājiem nevajadzētu atkārtoti ievadīt informāciju tikai, lai atsauktu piekrišanu.
- 2.4.11 Fokuss nav aizklāts — pašam banerim nevajadzētu aizklāt aiz tā esošo elementu fokusa indikatoru.
- 2.5.7 Vilkšanas kustības — ja jūsu baneris izmanto vilkšanas piekrišanas mijiedarbību, jāpastāv ar vienu rādītāju izmantojamā alternatīvai.
RTL un internacionalizācija
Pieejamība attiecas arī uz labās-uz-kreiso valodām (arābu, ivrita, persiešu, urdu) un ekrāna lasītāju izrunu:
- Iestatiet `dir="rtl"` uz banera, kad dokumenta valoda ir RTL, lai pogu secība un fokusa plūsma atbilstu lasīšanas virzienam.
- Izmantojiet pareizos `lang` atribūtus uz tulkotā banera teksta, lai ekrāna lasītāji izrunātu vārdus ar pareizo fonētiku.
- Atspoguļojiet ikonogrāfiju — bultiņas, lejupvērstās bultiņas un progresa indikatori jāapgriež RTL lokāliem.
Banera WCAG atbilstības testēšana
Nepaļaujieties uz vienu rīku. Apvienojiet automātisko skenēšanu ar reālu palīgtehnoloģiju testēšanu:
- axe DevTools vai Lighthouse — automātiski nosaka aptuveni 30–40% WCAG kļūmju.
- NVDA vai JAWS uz Windows, VoiceOver uz Mac/iOS, TalkBack uz Android — testējiet ar reāliem ekrāna lasītājiem. Vai baners var tikt paziņots, pārvietots un aizvērts, izmantojot tikai ekrāna lasītāju?
- Navigācija tikai ar tastatūru — atvienojiet peli. Ja nevarat Pieņemt, Noraidīt un pārvaldīt preferences, tastatūras lietotāji arī to nevar.
- Krāsu akluma simulācija — Chrome DevTools ir iebūvēti redzes deficītu simulatori. Pārbaudiet, vai Pieņemt un Noraidīt ir atšķirami protanopijas, deuteranopijas un tritanopijas gadījumā.
- Palielinājums līdz 400% — WCAG prasa, lai saturs paliek izmantojams 400% palielinājumā bez horizontālas ritināšanas. Fiksēta pozīcija baneri bieži neizdod šo pārbaudi.
Bieži pieejamības kļūmju gadījumi
- Noraidīt paslēpts aiz zobrata ikonas — tumšais modelis plus pieejamības kļūme (nav pieejama nosaukuma uz ikonas pogas).
- Fokuss nekad nesasniedz baneri — baneri, kas nozog vizuālo uzmanību, bet tiek izlaisti Tab secībā.
- Modālais baners bez fokusa aiztures — lietotāji var ar Tab pārslēgties uz fona lapu, kamēr baners apgalvo, ka bloķē mijiedarbību.
- Nav `aria-live` uz preferences izmaiņām — ekrāna lasītāja lietotāji nedzird apstiprinājumu, ka viņu izvēle tika saglabāta.
- Tulkoti baneri bez `lang` atribūta — ekrāna lasītāji izrunā spāņu valodas tekstu ar angļu fonētiku.
Kā FlexyConsent nodrošina pieejamību
FlexyConsent atbilst WCAG 2.2 AA no kastes:
- Visas vadīklas darbināmas ar tastatūru ar redzamiem 3:1 fokusa indikatoriem.
- Pareizs `role="dialog"` ar `aria-labelledby` un `aria-describedby`.
- Fokusa aizture ar Escape-aizvēršanu neobligātajiem baneriem.
- 4,5:1+ kontrasts uz katra teksta elementa, ieskaitot Noraidīt.
- Automātiska RTL apvēršana arābu, ivrita, persiešu un urdu lokāliem.
- `lang` atribūts iestatīts katram tulkojumam pareizai ekrāna lasītāja izrunai.
- Tālummaiņai tolerants izkārtojums, kas paliek izmantojams 400% palielinājumā.