di: Alessandro Fulciniti 05 Settembre 2006
È una buona pratica, purtroppo poco utilizzata, quella di fornire contenuti di supporto e ausili alla navigazione di pagine web a utenti di screen reader, browser testuali e dispositivi alternativi. L'accessibilità è un argomento vasto e complesso: una trattazione esaustiva si può trovare nella guida Accessibilità dei siti web pratica. Un ruolo significativo lo giocano però anche i CSS, e sarà questo l'argomento che tratteremo.
È una pratica comune nascondere a schermo link di salto ai contenuti e testo di supporto attraverso una classe CSS che ha un nome ormai quasi standard, ovvero "hidden". A questa classe viene sovente associata erroneamente la seguente regola CSS:
.hidden{
display: none
}
Qualcuno dei lettori ricorderà che sulla dichiarazione display:none si basa anche
la prima tecnica di image replacement, ovvero la
FIR, a cui Ë seguita
l'approfondita e critica analisi Facts and opinion about Fahrner Image Replacement.
In breve, il risultato è che usare display:none presenta un problema: ha l'effetto
di non rendere visivamente i contenuti a schermo ma li nasconde anche a diversi screen
reader, soprattutto quelli basati sul rendering engine di Internet Explorer, con conseguente
perdita di informazione a utenti con disabilità e dispositivi di navigazione alternativi.
Per questo motivo display:none, seppure possa sembrare una soluzione pratica e veloce per
nascondere contenuto di supporto a schermo, non andrebbe mai usata.
Ci sono molti modi per nascondere a schermo l'informazione senza usare display:none
e molti possono essere presi in prestito proprio dalle tecniche di image replacement che sono
seguite alla FIR. La tecnica off-left si presenta però quasi pensata proprio per questo motivo.
In sostanza si tratta di portare fuori dalla parte visibile dello schermo link e informazioni di supporto alla navigazione e consultazione grazie ai posizionamenti assoluti. La classe "hidden" diventa quindi:
.hidden{
position: absolute;
top: -9999px;left:-9999px;
}
In questo modo gli elementi di pagina a cui viene attribuito la classe "hidden" verranno resi dal browser, solo non saranno visibili perché fuori dallo schermo. Basterà quindi attribuire nell'HTML tale classe agli elementi che vorremo nascondere a schermo ma che forniamo proprio per essere un ausilio alla navigazione e alla consultazione a dispositivi alternativi. Alla prossima.
Responsive Desing, la guidaProgettare siti da fruire su dispositivi diversi è imprescindibile... |
Guida CSS3Scoprire e usare al meglio tutte le novità dell'ultima versione dei... |
Guida CSS Tecniche essenzialiTesto, immagini, layout, form, liste, tabelle: soluzioni pronte per... |
Ogni mercoledì, direttamente nella tua e-mail: guide, articoli, tutorial, FAQ e approfondimenti tecnici su CSS e Web Design.
Iscriviti alla newsletter
|
|
Corso Webmaster base18 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |
|
|
Corso Webmaster base11 Giugno 2012 a Roma |