Dostopnost soglasja za piškotke: Skladnost z WCAG 2.2 za pasice soglasja
Pasica piškotkov, ki je uporabniki tipkovnice ne morejo zavrniti, bralniki zaslona je ne morejo najaviti ali barvno slepi obiskovalci ne morejo prebrati, ni samo slaba izkušnja — to je neuspeh skladnosti na dveh frontah. Odkar je Evropski akt o dostopnosti stopil v veljavo junija 2025, morajo vmesniki soglasja na komercialnih spletnih mestih, ki strežejo uporabnikom EU, izpolnjevati WCAG 2.1 raven AA, pri čemer je WCAG 2.2 močno priporočen za leto 2026. V kombinaciji z zahtevo GDPR, da mora biti soglasje "prostovoljno, specifično, informirano in nedvoumno", nedostopne pasice zdaj nosijo dvojno pravno izpostavljenost. Ta vodič natančno razlaga, kako je videti pasica piškotkov, ki je skladna z WCAG, leta 2026.
Zakaj se Dostopnost in Soglasje Zdaj Prekrivata
GDPR zahteva, da se soglasje pridobi od vsakega uporabnika, ne le od tistih, ki vidijo in kliknejo pasico. Evropski odbor za varstvo podatkov je pojasnil, da če posameznik, na katerega se nanašajo podatki, ne more smiselno komunicirati z vmesnikom soglasja — zaradi invalidnosti, ki je spletno mesto ni upoštevalo — soglasje ni bilo veljavno pridobljeno. To pomeni, da piškotkov sploh ne bi smeli naložiti.
Na strani dostopnosti Evropski akt o dostopnosti (EAA), prenesen v nacionalno zakonodajo v vseh državah članicah EU, uvaja WCAG 2.1 AA kot minimum za spletna mesta in aplikacije zasebnega sektorja, ki ponujajo potrošniške storitve. Sistem sankcij se razlikuje po državah, a se tipično giblje med €50.000 in €500.000 za kršitev, plus odredbe o umiku s trga za vztrajno neskladnost.
Osnovne Zahteve WCAG za Pasice Piškotkov
Upravljanje s Tipkovnico
Vsak kontrolnik pasice — Sprejmi, Zavrni, Upravljaj nastavitve, zapri — mora biti dostopen in upravljiv samo s tipkovnico. Uporabniki morajo biti zmožni uporabiti Tab za krmarjenje med gumbi v logičnem vrstnem redu in jih aktivirati z Enter ali Space. Fokus mora biti viden z minimalnim razmerjem kontrasta 3:1 glede na ozadje.
Ujemanje Fokusa v Modalnih Pasicah
Če pasica blokira interakcijo z ostalo stranjo, mora biti fokus tipkovnice ujet znotraj pasice, dokler uporabnik ne naredi izbire. Uporabniki ne smejo biti zmožni s Tab-om iziti iz pasice za pomikanje po podlagi. Ko je bil fokus ujet in se pasica zapre, se mora fokus vrniti na element, ki je sprožil pasico, ali na smiselno privzeto vrednost.
Napovedni Bralnika Zaslona
Pasica mora biti napovedana kot dialog z dostopnim imenom in vlogo. Uporabite `role="dialog"` ali `role="alertdialog"` z `aria-labelledby`, ki kaže na naslov pasice, in `aria-describedby`, ki kaže na pojasnjevalno besedilo.
Barvni Kontrast
Besedilo telesa mora dosegati kontrast 4,5:1 glede na ozadje; veliko besedilo (18pt+ ali 14pt krepko) potrebuje 3:1. Besedilo gumbov, ikone in indikatorji fokusa imajo vsak svoje minimalne vrednosti kontrasta. Svetlosivo gumb „Zavrni" na belem ozadju je pogosta napaka WCAG, ki jo vidimo pri revizijah.
Brez Znakov Samo na Osnovi Barve
Ne zanašajte se izključno na barvo za razlikovanje med Sprejmi in Zavrni. Uporabite razlikovalne oznake, ikone ali oblike, da bodo uporabniki z barvno slepoto lahko razlikovali med gumbi.
Temni Vzorci in Dostopnost
WCAG 2.2 uvaja nove kriterije, ki neposredno ciljajo na temne vzorce — posebej relevantne za soglasje:
- 3.3.8 Dostopna Avtentikacija — prepoveduje kognitivne uganke kot oviro pri soglasju.
- 3.3.7 Odvečni Vnos — uporabnikom ne bi smelo biti treba znova vnesti informacij samo za preklic soglasja.
- 2.4.11 Fokus Ni Prikrit — pasica sama ne sme prikrivati indikatorja fokusa elementov za njo.
- 2.5.7 Gibanje Vlečenja — če vaša pasica uporablja interakcijo vleci-za-sprejmi, mora obstajati alternativa z enim kazalcem.
RTL in Internacionalizacija
Dostopnost se razširja na jezike od desne proti levi (arabščina, hebrejščina, perzijščina, urdu) in izgovorjavo bralnika zaslona:
- Nastavite `dir="rtl"` na pasici, ko je jezik dokumenta RTL, da se vrstni red gumbov in potek fokusa ujemata s smerjo branja.
- Uporabite pravilne atribute `lang` na prevedenem besedilu pasice, da bralniki zaslona izgovarjajo besede s pravilno fonetiko.
- Zrcaljenje ikonografije — šifrine, puščice in indikatorji napredka se morajo za RTL mesta obrniti.
Testiranje Pasice za Skladnost z WCAG
Ne zanašajte se na eno samo orodje. Združite samodejno skeniranje z resničnim testiranjem pomožnih tehnologij:
- axe DevTools ali Lighthouse — samodejno zazna približno 30–40% napak WCAG.
- NVDA ali JAWS na Windows, VoiceOver na Mac/iOS, TalkBack na Android — testirajte z resničnimi bralniki zaslona. Ali je pasico mogoče napovedati, krmariti in zavrniti samo z bralnikom zaslona?
- Krmarjenje samo s tipkovnico — odklopite miško. Če ne morete Sprejeti, Zavrniti in upravljati nastavitev, tega ne morejo niti uporabniki tipkovnice.
- Simulacija barvne slepote — Chrome DevTools ima vgrajene simulatorje okvar vida. Preverite, ali sta Sprejmi in Zavrni razlikova pri protanopiji, deuteranopiji in tritanopiji.
- Povečava na 400 % — WCAG zahteva, da vsebina ostane uporabna pri 400 % povečavi brez horizontalnega pomikanja. Pasice s fiksnim položajem pogosto ne opravijo tega testa.
Pogoste Napake Dostopnosti, ki jih Vidimo
- Zavrni skrit za ikono zobnika — temni vzorec plus napaka dostopnosti (ni dostopnega imena na gumbu z ikono).
- Fokus nikoli ne doseže pasice — pasice, ki kradejo vizualno pozornost, a so izpuščene v vrstnem redu Tab.
- Modalna pasica brez ujemanja fokusa — uporabniki se s Tab-om lahko prestavijo na stran v ozadju, medtem ko pasica trdi, da blokira interakcijo.
- Brez `aria-live` pri spremembah nastavitev — uporabniki bralnika zaslona ne slišijo potrditve, da je bila njihova izbira shranjena.
- Prevedene pasice brez atributa `lang` — bralniki zaslona izgovarjajo špansko besedilo z angleško fonetiko.
Kako FlexyConsent Zagotavlja Dostopnost
FlexyConsent izpolnjuje WCAG 2.2 AA brez dodatne konfiguracije:
- Vsi kontrolniki upravljivi s tipkovnico z vidnimi indikatorji fokusa 3:1.
- Pravilni `role="dialog"` z `aria-labelledby` in `aria-describedby`.
- Ujemanje fokusa z Escape-za-zaprtje za neobvezne pasice.
- Kontrast 4,5:1+ na vsakem besedilnem elementu, vključno z Zavrni.
- Samodejno RTL preklapljanje za arabska, hebrejska, perzijska in urdu mesta.
- Atribut `lang` nastavljen za vsak prevod za pravilno izgovorjavo bralnika zaslona.
- Postavitev, tolerantna na povečavo, ki ostane uporabna pri 400 %.