Mé malé přístupnostní dilemátko
Před časem jsem, k mému velkému překvapení zjistil, že hlasové
čtečky (screen-readers) nečtou to, co odjakživa skrývám pomocí
display:none
. Velké překvapení, skoro šok. Znamená to
jediné: všechny ty přístupností nablýskané odkazy k přeskakování
navigace jsou vlastně nepřístupné. Neviditelné. Neviditelné ne
jen po vizuální stránce, to znamená tak, jak byly zamýšleny, ale
neviditelné jsou rovněž pro hlasové čtečky… Jak jsem řekl, šok. Toto
chování je od čteček iracionální. A toto chování se děje, ačkoli je
styl linkovaný s média-typem definovaným jako screen
.
Představte si, že by si čtečky najednou začaly interpretovat další
vizuální definice… [smajlík, klepající si na čelo].
Kde že je to dilema? No přece… na stejném místě, na kterém bojuji proti IE6 pomocí jeho diskriminace. I v případě hlasových čteček mám sto chutí vykašlat se na nějaké dobré snahy, aby mé úmysly idiot chápal správně.
Stejně jako v boji proti IE není
problém tu a tam doplnit styl _pro-blbce: ještě-jednou;
nebo věnovat pár minut k napsání podmíněně-komentovaného stylopisu…
u čteček není problém místo display:none;
psát
height:0; ...
. Jenže tady jde o princip… a také mi astroložka
pověděla, že jsem jeden z těch tvrdohlavých a neústupných. Zkrátka mám
pocit, že ustupování, podřizování se, a všechny tyto dobré činy jen
napomůžou tomu, aby pro tvůrce čtecích zařízení přestal existovat
důvod, proč chování čteček uvést zpět ke smysluplnosti.
PS: Jon Hicks nebo třeba Plaváček (nebo třeba i já) to dělají cca takle:
.noscreen {
position: absolute;
left: -999px;
width: 990px;
}
Komentáře (7)
k formuláři
RSS kanál komentářů
14.5. 2007 — 20:21
On je to celkem rozumný krok, určitě bych to nenazýval jako iracionální chování. Většina webů totiž žádný stylopis pro hlasové čtečky nemá a proto se musí spokojit se stylem pro obrazovky. A proč by měly číst něco, co se na obrazovce stejně nezobrazí?
14.5. 2007 — 21:54
[1] Acci: – Většina webů žádný stylopis pro čtečky nemá, protože (co vím, tak) prakticky žádná čtečka si stylopis určený pro ni nepřečte (stylopis
media:aural
).Když styl odkážeš např. jako
screen, projection, tv
, tak tím dáváš najevo, pro jaké zařízení je ten stylopis určen. Tiskárna taky nečtescreen
, protože ví, že pokud mezi styly není nějakýprint
nebobez médiatypu
, tak prostě žádnej styl nemá a vytiskne nanastylovanou stránku.Čtečka ti média-typ ignoruje. Tak tomu rozumím a tak mi to připadá iracionální.
17.5. 2007 — 10:17
ja bych to ctecce odpustil, kdyby nebyl deklarovany ten media typ. Tkhla je to fakt kocourkov.
21.5. 2007 — 21:21
Ono to úplně není tak přesné, například pokud nastavím display:none pro label, tak ho čtečka v pohodě přečte.
22.5. 2007 — 0:00
[4] Ivo Toman: – Zajímavé. Takže… mohl bys poukázat na nějakou logiku v chování? Teda pokud máš informace o dalších elementech a tu logiku jsi ji dokázal najít?
26.5. 2007 — 19:53
Ještě na toto téma budu psát v souvislosti s Interzenem, leč nezapomínej na :active a :focus.. protože ty přeskakovací odkazy tam nejsou jen pro čtečky (kterých je málo), ale i pro klávesnicáky (kterých je taky málo) a PDAčkáře (kteří už jsou zajímavější)..
29.5. 2007 — 10:43
He, hej.. tak to dělám i já :)
Ale opravdu v tom je malinko zmatek :( A astroložky někdy lžou :)))
Přidat komentář