Proč je přístupnost (a11y) klíčová
Webová přístupnost je soubor principů a technik, které zajišťují, aby webové stránky a aplikace mohly být používány osobami se zrakovým, sluchovým, pohybovým, kognitivním či jiným omezením. Standardem jsou Web Content Accessibility Guidelines (WCAG), jež stanovují měřitelné požadavky na obsah, interakci a technologii. Dodržování WCAG prospívá všem uživatelům: zlepšuje použitelnost, výkon, SEO, kvalitu kódu a snižuje náklady na údržbu.
Struktura WCAG: principy, kritéria a úrovně shody
- 4 principy: Vnímatelnost (Perceivable), Ovládatelnost (Operable), Srozumitelnost (Understandable), Robustnost (Robust) – zkratka POUR.
- Kritéria úspěšnosti: konkrétní, testovatelné požadavky; verze WCAG 2.x (2.0, 2.1, 2.2) postupně přidávají nová kritéria.
- Úrovně: A (minimální), AA (doporučený cíl pro většinu organizací), AAA (nejvyšší – ne vždy prakticky dosažitelná na celém webu).
Vnímatelnost (Perceivable): informace musí být k dispozici smyslům
- Textové alternativy pro netextový obsah (obrázky, ikony, grafy) – smysluplné
altpopisy, u dekorativníchalt="". Složitá data (infografiky) vyžadují rozsáhlý popis v okolním textu. - Časově závislá média: titulky pro video, přepisy pro audio, audiopopis pro vizuálně důležité děje; synchronizace a správné označení jazyka.
- Adaptovatelnost: sémantické HTML, správná hierarchie nadpisů (
h2–h6), seznamy, tabulky použité pouze pro data, nikoli pro layout; využití ARIA landmarků (header,nav,main,footer). - Rozlišitelnost: barevný kontrast textu vůči pozadí minimálně 4.5:1 (AA), u velkého textu 3:1; barvu nepoužívat jako jediný nositel informace; možnost vypnout animace a minimalizovat blikání (zákaz záblesků >3×/s bez kontroly bezpečnosti).
- Reflow a zvětšení: obsah musí podporovat přizpůsobení (reflow) bez horizontálního posunu a zvětšení až na 200 % bez ztráty funkčnosti; respektovat uživatelské preference (např. prefers-reduced-motion).
Ovládatelnost (Operable): uživatelské rozhraní a navigace musí být snadno použitelné
- Klávesnice na prvním místě: všechno musí být ovladatelné klávesnicí bez pasti fokusu; logická posloupnost přechodu (tabbingu); viditelný a dostatečně kontrastní stav focus.
- Čas a pohyb: dostatečné časové limity, možnost zastavit, pozastavit či skrýt pohyblivý obsah; vyhnout se automatickým obnovám (refreshům).
- Prevence záchvatů: neblikající obsah nebo splnění bezpečnostních metrik; animace respektují nastavení reduced motion.
- Navigace: konzistentní menu, skip linky k hlavnímu obsahu, sitemap, breadcrumb; jasné pořadí fokusu v modálních oknech.
- Gesta a ukazatele: cílové plochy (target size) dostatečně velké; u mobilních zařízení alternativa pro gesta vyžadující přesnost; bez závislosti na síle přítlaku.
- Rozšíření WCAG 2.2: Focus Appearance (viditelnost fokusu), Dragging Movements (alternativa k tažení), Target Size (Minimum) (minimální velikost klikacích prvků), Redundant Entry (nevyžadovat opakované zadávání stejné informace) a Accessible Authentication (ověření bez kognitivní zátěže).
Srozumitelnost (Understandable): obsah a interakce musí být jasné a logické
- Čitelnost: srozumitelný jazyk, definovaný hlavní jazyk dokumentu (
lang) a jazykové přepínače pro vložené pasáže. - Předvídatelnost: konzistentní umístění navigace a prvků; žádné neočekávané změny kontextu bez potvrzení (např. změna stránky po onchange bez odesílacího tlačítka).
- Podpora vyplňování: jasné štítky (
label), pokyny (help text), atributy autocomplete; validace se srozumitelnými chybami, které jsou programově zjistitelné; souhrn chyb zvýrazněný nad formulářem a vazbaaria-describedby. - Chyby a prevence: důležité akce (nákup, smazání) vyžadují potvrzení, možnost úprav a revizi; chyby nesmí být signalizovány pouze barvou.
Robustnost (Robust): kompatibilita s asistivními technologiemi
- Validní HTML: korektní DOM, jedinečné ID, správné role; sémantika má přednost před ARIA.
- ARIA: používat pouze tam, kde chybí sémantika; správné použití
role,aria-label/aria-labelledby,aria-expanded,aria-live; no ARIA is better than bad ARIA. - Komponenty: vlastní prvky (custom widgets) musí replikovat chování nativních prvků (fokus, klávesové zkratky, stavové indikátory).
Barvy, kontrast a vizuální hierarchie
- Kontrast textu: AA 4.5:1, velký text 3:1; AAA cíl 7:1, resp. 4.5:1 pro velký text.
- Interaktivní prvky: stavy hover/focus/active musí být zřetelné; barevná informace doplněná tvarem, ikonou nebo textem.
- Grafy a mapy: vzory a symboly místo čistě barevného rozlišení; legendy přístupné čtečkám obrazovky.
Formuláře: programovatelnost a srozumitelná validace
- Označení (labeling): každý
inputmusí mítlabel(nikoliv placeholder jako náhrada); skupiny pole majífieldsetalegend. - Pomoc a nápověda:
aria-describedbypro hinty i chybové zprávy; jasná očekávání (formát data, heslo apod.). - Chyby: přehledný souhrn chyb, odkazy na konkrétní pole, indikace nespojená pouze s barvou; validace krok za krokem.
- Automatické doplňování (autofill): konzistentní hodnoty
autocompletepro snížení kognitivní zátěže.
Multimédia: titulky, přepisy a audiopopis
- Video: přesné a synchronní titulky; u důležitých vizuálních informací audiopopis.
- Audio: přepisy; ovladače pro pauzu a hlasitost přístupné pomocí klávesnice.
- Automatické přehrávání: ve výchozím nastavení vypnuto, uživatel má plnou kontrolu.
Navigační vzory a informační architektura
- Landmarky:
header,nav,main,aside,footerpro rychlý pohyb pomocí čteček obrazovky. - Hlavičky a nadpisy: jednotná logická hierarchie bez přeskočení úrovní; nadpis jasně shrnuje obsah sekce.
- Breadcrumb: pomáhá orientaci v hierarchii; jednoznačné názvy odkazů (nikoliv „Zde“).
Interakce, ovládání a fokus
- Viditelný fokus: dostatečná tloušťka a kontrast; nesmí být překrytý ani skrytý pod fixními prvky.
- Správa pasti fokusu (trap management): modální okno vrací fokus po uzavření na element, který měl fokus před tím; pořadí focus order odpovídá vizuálnímu toku stránky.
- Klávesové zkratky: musí být dokumentované, nezasahovat do nativních zkratek, a uživatel by je měl mít možnost vypnout nebo přemapovat.
Responzivita, reflow a dotyk
- Reflow: layout bez horizontálního posuvu při šířce až 320 px; komponenty se přeuspořádají, ale klíčové funkce nejsou skryty.
- Dotykové cíle: dostatečně velké s přiměřenými mezerami; alternativa k drag & drop (např. tlačítka pro přesun).
- Orientace: aplikace funguje v režimu na výšku i na šířku, pokud to neomezuje její funkčnost.
Mezinárodní prostředí a jazyk
- Jazyk dokumentu:
lang="cs"u kořenového elementu; u cizích slov nebo pasáží nastavenílangna inline úrovni. - Formáty: lokální nastavení data, času, čísel a měn; podpora směru zápisů zprava doleva (RTL), pokud je relevantní.
ARIA: kdy a jak správně
- Priority: nejprve využít nativní HTML, až poté ARIA; role nesmí být protichůdné vůči sémantice elementu.
- Stavy a atributy:
aria-expanded,aria-pressed,aria-currentu navigačních prvků; inteligentní používáníaria-live, vyvarovat se zahlcení čteček. - Vlastní komponenty: implementovat roving tabindex, správné role, klávesové vzory podle WAI-ARIA Authoring Practices (např. seznamy, menu, comboboxy).
Testování: metody, nástroje a metriky
- Automatizace: lintery a nástroje pro skenování (axe, pa11y, Lighthouse) – detekují základní chyby, ale nenahrazují manuální testování.
- Manuální testování: kontrola klíčových postupů pomocí klávesnice, testování s čtečkami NVDA, JAWS, VoiceOver, mobilní čtečky a ovládání switchem.
- Uživatelské testy: zapojení osob se zdravotním postižením; ověření srozumitelnosti a mentální zátěže.
- Metriky: počet zásadních problémů v klíčových scénářích, doba potřebná k dokončení úkolu, míra chybovosti, pokrytí kritérií na úrovni AA.
Proces a řízení: jak udržet shodu
- Shift-left: požadavky na přístupnost začleněné již do definice hotového; design tokeny s kontrastem, komponenty ověřené testy přístupnosti.
- Design systém: ověřené komponenty jako jediný zdroj pravdy; dokumentované vzory (modální okna, záložky, menu, tabulky).
- CI/CD: automatické testy přístupnosti v pull requestech; vizuální regresní a kontrastní testy.
- Role: odborník na přístupnost (a11y champion) v týmu, pravidelné revize, školení designérů a vývojářů.
Časté nedostatky a jejich odstranění
- Text v obrázcích bez alternativ – nahradit skutečným textem nebo poskytnout plnohodnotný
altči dlouhý popis (longdesc). - Placeholder jako náhrada labelu – vždy použít viditelný
label; placeholder slouží pouze jako doplňková nápověda. - Nedostatečný kontrast – upravit barevnou paletu, vytvořit kontrastní varianty tokenů, testovat i v tmavém režimu.
- Skrytí fokusu – nikdy neodstraňovat obrys fokusu bez adekvátní náhrady; používat vizuálně sladěný a dostatečně viditelný fokus.
- Nekonzistentní nadpisy – udržovat hierarchii bez skoků; každý blok by měl mít smysluplný nadpis.
Implementační kontrolní seznam (úroveň AA)
- Vše ovladatelné klávesnicí, zřetelný fokus, bez pasti.
- Kontrast textu minimálně 4.5:1, interaktivní stavy jasně odlišené.
- Textové alternativy pro všechny netextové prvky s významem.
- Responzivní přizpůsobení (reflow) bez horizontálního posuvu, zoom až 200 %.
- Validní HTML, sémantické strukturování, použití landmarků.
- Titulky a přepisy pro multimédia; kontrola přehrávání.
- Formuláře s
label, nápovědou, srozumitelnými chybami a autocomplete. - Konzistentní navigace, skip linky, jasné názvy odkazů.
- Žádné automatické změny kontextu bez potvrzení uživatelem.
- Testování s čtečkami, klávesnicí a na mobilních zařízeních; audit nástroji.



























