Archiv rubriky: Přístupnost webu

Jak vybrat barvy pro grafický návrh s ohledem na přístupnost

Dostatečný barevný kontrast umožňuje – či usnadňuje – uživatelům čtení textů a seznámení se s obsahem webu. Netýká se – jak si hodně lidí myslí – jen uživatelů s poruchou barvocitu, ale dostatečně kontrastní a dobře čitelný text ocení každý návštěvník webu. Proto je velmi důležité vzít při grafickém návrhu kontrast v potaz a zvolit pro jednotlivé části webu takové barvy, které budou vzájemně dostatečně kontrastní.

Metodika WCAG 2.0 i česká Pravidla přístupnosti používají pro měření dostatečného vzájemného kontrastu barev algoritmus světelnosti a berou také kromě použitých barev v potaz i velikost písma. Minimální kontrastní poměr pro běžné písmo do velikosti 18 bodů nebo tučné písmo do velikosti 14 bodů je 4,5:1, pro běžné písmo nad 18 bodů nebo tučné písmo nad 14 bodů je minimální kontrastní poměr 3:1.

Nástrojů, jak testovat dostatečný kontrast, jsem zde na POSLEPU v minulosti už několik představil. Dnes přidám další, které mohou pomoci ne primárně při zpětné kontrole, zda jsou použité barvy vzájemně dostatečně kontrastní, ale už při výběru barev pro grafický návrh.

Paletton

První krok, který musíme udělat, je vybrat si barvy pro grafický návrh. K tomu nám může posloužit například Paletton od Petra Staníčka. Paletton nabízí jako jednu ze svých funkcí simulátor některých zrakových vad (Vision simulation), takže už přímo při návrhu designu a výběru barev si můžeme vyzkoušet, jak zvolenou kombinaci barev uvidí návštěvníci, kteří barvy vidí špatně nebo je nevidí vůbec.

Paletton - Vision Simulation

Pro výběr barevných kombinací, které odpovídají požadavkům na minimální barevný kontrast, pak můžeme v Palettonu použít funkci Contrast Table. Najdeme ji pod odkazem Color Tables…, v dialogu Filter minimum contrast nastavíme hodnotu, kterou považujeme za minimální (WCAG vyžaduje 3 pro větší texty a 4,5 pro menší) a následně si v tabulce vybereme ty kombinace, které jsou dostatečně kontrastní a současně vyhovují našim záměrům.

Color tables - Contrast table

Color Palette Accessibility Evaluator

Dalším nástrojem, který nám může pomoci při výběru vhodných barev, je Color Palette Accessibility Evaluator. Jeho ovládání je také velmi jednoduché: nejprve zadáme RGB kódy vybraných barev (pokud víme, že chceme mít text černou nebo bílou barvou, je dobré do výběru zahrnout i tyto barvy), v dalším kroku si vybereme, zda chceme testovat podle požadavků WCAG AA nebo AAA a necháme si vygenerovat paletu.

Color Palette Accessibility Checker - Analysis

Nyní si vybereme jednu barvu a necháme si ji zanalyzovat, tzn. vygenerovat tabulku kontrastních poměrů této barvy oproti ostatním barvám.

color-palette-accessibility-checker-analysis

V tabulce pak vidíme, které barevné kombinace jsou dostatečně kontrastní a je tedy možné je použít (tabulka s výsledky je rozsáhlejší, v náhledu je jen její první část).

Tanaguru Contrast-Finder

Poslední z dnes představených nástrojů pomáhá v situacích, kdy nám některá z barevných kombinací nesplňuje požadavky na minimální kontrast. Vhodnou barevnou kombinaci můžeme v takovém případě hledat buď ručně (může nám k tomu posloužit třeba Colour Contrast Analyzer) nebo můžeme nalezení vhodné kombinaci svěřit nástroji s názvem Tanaguru Contrast-Finder.

Tanaguru Contrast Finder - formulář

Ovládání nástroje je opět velmi jednoduché. Do formuláře zadáme barvy, které chceme otestovat, vybereme barvu, se kterou má možnost nástroj „hýbat“ (tedy měnit ji tak, aby v kombinaci s druhou barvou vyhovovala požadavkům na minimální kontrast), zvolíme, zda chceme jako výsledek větší rozsah barev, nebo jen ty, které jsou „blízko“ původní barvě, potvrdíme a je to.

Tanaguru Contrast Finder - výsledky

Pak už jen stačí vybrat si z navržených barev tu, která se nám nejvíce líbí.

Závěr

A to je vše. Jak je z předchozích řádků zřejmé, výběr dostatečně kontrastních barev pro grafický návrh není při použití výše uvedených nástrojů nic složitého. Pokud tedy máte co do činění s barvami, zařaďte tyto nástroje do svého arsenálu. Chybu tím určitě neuděláte.

Kam dál?

Project Naptha – vyberte a zkopírujte text z obrázku

Texty ve formě obrázků působí problémy s přístupností nejen nevidomým. Kontaktní informace či datum konání akce prezentované pouze v grafické podobě, z níž není možné zkopírovat požadované informace do adresáře či kalendáře, komplikují život komukoliv, kdo potřebuje pracovat s informacemi v textové podobě.

Tento týden jsem narazil na Project Naptha, který právě podobné situace řeší. V současné době existuje jako experimentální rozšíření do Google Chrome (jiné prohlížeče zatím nejsou podporovány), které hned po načtení stránky provádí na pozadí analýzu textu v obrázcích a ve chvíli, kdy uživatel začne označovat některou část textu do bloku, spustí OCR.

Naptha zatím bohužel nefunguje pro texty v češtině a i u těch anglických je občas (když je použitý nějaký atypický font) výsledek nic moc, ale obecně jsem za těch pár dnů, co jej testuji, s fungováním rozšíření a s většinou rozpoznaných textů spokojen.

Tak pokud vám takový nástroj pro anglické texty chybí, vyzkoušejte si živé demo na projectnaptha.com nebo si rozšíření Naptha přidejte do Chromu.

Související odkazy

WAI ARIA 1.0 byla vydána jako doporučení W3C

Specifikace Accessible Rich Internet Applications (WAI-ARIA) 1.0 a WAI-ARIA 1.0 User Agent Implementation Guide byly 20. března 2014 vydány jako Doporučení W3C (W3C Recommendation). Co to v praxi znamená a jaké výhody WAI ARIA kodérům přináší?

Co je a k čemu se hodí WAI ARIA?

WAI ARIA je nástroj, který pomáhá zlepšit sémantiku webu či webové aplikace a tím poskytnout asistivním technologiím informace, které jim HTML dát nemůže. Pomáhá tedy vyřešit problémy s přístupností všude tam, kde HTML nestačí. Vývojářům nabízí:

  • Role, pomocí nichž je možné popsat jednotlivé typy widgetů, jako jsou „menu“, „treeitem“ či „slider“.
  • Role, pomocí nichž lze popsat strukturu webové stránky – tzv. oblasti stránky.
  • Vlastnosti, pomocí nichž lze popsat, v jakém stavu se jednotlivé widgety nacházejí.
  • Způsob, jak ošetřit přístupnost z klávesnice pro jednotlivé objekty na webové stránce.

WAI ARIA například velmi snadno umožňuje zlepšit přístupnost informací o webové stránce jako celku. Pomocí tzv. oblastí stránek (landmarků) je možné přiřadit role jednotlivým částem stránky a umožnit tak uživatelům nejen velmi snadno získat přehled o tom, z jakých částí se stránka skládá, ale i se na ně velmi rychle přesunout. Oproti doposud používaným nadpisům pak mají oblasti stránek nejméně dvě výhody:

  • lze pomocí nich vyznačit celou oblast (tedy ne jen její začátek, jako je tomu v případě nadpisů).
  • Lze s nimi pracovat odděleně od nadpisů. To v praxi mimo jiné znamená, že uživateli už se při orientaci na stránce nemíchají dohromady nadpisy, které bezprostředně souvisí s hlavním sdělením stránky, a nadpisy „servisní“, které uvozují například menu, vyhledávání, atp.

Vzhledem k tomu, že nadpisy jsou stále mezi uživateli používány jako primární navigační mechanismus při pohybu po stránce a oblasti stránek nejsou ještě tak masivně používány, je vhodné tyto dva přístupy kombinovat.

V praxi to pak vypadá (a probíhá) velmi jednoduše. Pokud chceme o nějakém divu říci, že obsahuje hlavní obsah stránky, uděláme to snadno přiřazením role main. Tedy takto:

<div role=“main“>
<h1>Hlavní nadpis</h1>
Hlavní obsah stránky
</div>

Role můžeme využít nejen pro oblasti stránky, ale i pro sémantický popis jednotlivých HTML elementů. Pokud div obsahuje například seznam (listbox), můžeme díky WAI ARIA tuto skutečnost sdělit asistivní technologii (například screen readeru) a ta bude na obsah tohoto divu následně nahlížet jako na seznam.

Pomocí WAI ARIA pak můžeme u jednotlivých elementů (widgetů) popsat i to, v jakém se nacházejí stavu – tedy jestli jsou rozbaleny nebo sbaleny, zda je editační pole ve formuláři povinné, atp. Pokud stránka obsahuje nějaký dynamicky měnící se obsah, i ten lze pomocí WAI ARIA zpřístupnit.

Poslední, ale neméně důležitou oblastí, kde WAI ARIA pomáhá, je pak zlepšení přístupnosti z klávesnice. Zatímco u HTML 4.01 je možné se z klávesnice dostat pouze na odkazy a formulářové prvky, WAI ARIA rozšiřuje přístupnost z klávesnice tím, že umožňuje přiřazení vlastnosti tabindex jakémukoliv elementu.

Jak je na tom WAI ARIA s podporou v prohlížečích?

Podpora WAI ARIA je na velmi slušné úrovni jak v moderních prohlížečích, tak v asistivních technologiích, takže ani z praktického úhlu pohledu není nejmenší důvod ji nepoužívat.

Kdy použít některou z technik z WAI ARIA?

Odpověď je velmi jednoduchá – pokaždé, když nám k zajištění bezproblémové přístupnosti nedostačují prostředky, které nabízí HTML. WAI ARIA se také hodí v situacích, kdy je přístupnost řešena ex post a není již možné jednoduše zasahovat do kódu webu či aplikace. Je potřeba vyznačit jednotlivé oblasti stránky? Zpřístupnit formulářové prvky? Zlepšit přístupnost z klávesnice? K tomu všemu se WAI ARIA naprosto perfektně hodí.

K čemu se WAI ARIA nehodí?

Ke všemu, co lze udělat pomocí nativního HTML. Připomeňme si, že WAI ARIA nemění chování prohlížeče, ale jen poskytuje asistivním technologiím informace, které by jinak nemohly získat. Pokud tedy například uděláme z divu přepínač, musíme se pak postarat i o jeho přístupnost z klávesnice, reakci na stisknutý Enter/Mezerník a vůbec všechny vlastnosti, které má má mít přepínač.

Pro získání základního přehledu o tom, k čemu je možné WAI ARIA (v kombinaci s HTML5) použít, nabízím slajdy k mé loňské prezentaci, případně odkazy na další zdroje na konci tohoto článku.

>Pokud ještě WAI ARIA nepoužíváte, určitě to zkuste – většina věcí nevyžaduje zdlouhavé studium spousty materiálů a dá se implementovat prakticky okamžitě.

Komentované slajdy k prezentaci Jak může HTML5 a WAI ARIA zlepšit virtuální prostor univerzity

Související odkazy