ti trovi in: Home Page - Biblioteca - Manualistica - L'accessibilità dei siti web - Accessibilità dei contenuti -
Definizione
La quinta linea guida da rispettare per garantire l'accessibilità dei contenuti dei siti Web afferma:
"Assicurarsi che le tabelle siano strutturate correttamente"
Ai fini dell'accessibilità, le tabelle restano per certi aspetti elementi abbastanza critici. Il punto cruciale del problema è nell'uso che si fa delle tabelle.
Esse dovrebbero essere utilizzate esclusivamente per mostrare informazioni realmente tabellari, cioè come "tabelle di dati".
Invece, non dovrebbero essere usate, come spesso avviene, per l'impaginazione dei documenti, cioè come "tabelle di impaginazione".
E' necessario utilizzare i marcatori correttamente, solo così tutti gli utenti potranno accedere e interagire con le tabelle senza perdere o distorcere le informazioni.
In questo modo, si favoriscono sia coloro che accedono alle tabelle con ausili audio, come un lettore di schermo o un PC installato in auto, o con sistemi a display piccoli, come i cellulari; sia coloro che possono vedere solo una parte per volta della tabella, come le persone con problemi alla vista.
Priorità 1 - Identificare righe e colonne
Per rappresentare dei dati in forma tabellare, si deve usare il tag TABLE e i suoi attributi: TR, TD, TH e CAPTION.
L'alternativa a questo comando, per esempio il tag PRE per testi preformattati, renderebbe la comprensione delle tabelle più difficile per gli utenti che usano le tecnologie assistive.
Ecco un esempio di tabella correttamente strutturata.
Colonna 1 | Colonna 2 | |
---|---|---|
Riga 1 | C1R1 | C2R1 |
Riga 2 | C1R2 | C2R2 |
Codice della tabella:
<TABLE>
<TR>
<TD> </TD>
<TH>Colonna 1</TH>
<TH>Colonna 2</TH>
</TR>
<TR>
<TH>Riga 1</TH>
<TD>C1R1</TD>
<TD>C1R2</TD>
</TR>
<TR>
<TH>Riga 2</TH>
<TD>C2R1</TD>
<TD>C2R2</TD>
</TR>
</TABLE>
Bisogna ricordarsi, inoltre, che quando si usa una tabella per determinare il layout della pagina, non si devono assolutamente usare i markup riservati ai dati delle tabelle come TH, HEADER, SCOPE, COLGROUP. Infatti, questi elementi saranno usati da alcuni interpreti per identificare e manipolare dei dati, che poi effettivamente non ci sono.
L'HTML 4.0, inoltre, permette di legare esplicitamente all'intestazione della colonna il valore contenuto nella riga corrispondente, usando l'attributo HEADERS degli elementi TD e TH.
In questo modo, ogni dato è associato esplicitamente con la appropriata intestazione.
Si veda l'esempio successivo per maggiori chiarimenti.
Quando si usa l'attributo HEADERS, il browser o lo screen reader saranno capaci di esporre o leggere i contenuti delle celle della tabella (se l'utente lo vuole) in questa maniera:
Nome: P. Bianchi, Tazze: 10, Tipo: Espresso, Zucchero:
No
Nome: M. Rossi, Tazze: 5, Tipo: Decaffeinato, Zucchero: Si
associando ogni dato alla sua intestazione.
Nome | Tazze | Tipo di caffè | Zucchero? |
---|---|---|---|
P. Bianchi | 10 | Espresso | No |
M. Rossi | 5 | Decaffeinato | Si |
Codice della tabella
<TABLE>
<TR>
<TH id="t1">Nome</TH>
<TH id="t2">Tazze</TH>
<TH id="t3" abbr="Type">Tipo di caffè</TH>
<TH id="t4">Zucchero? </TH>
</TR>
<TR>
<TD headers="t1">P. Bianchi</TD>
<TD headers="t2">10</TD>
<TD headers="t3">Espresso</TD>
<TD headers="t4">No</TD>
</TR>
<TR>
<TD headers="t1">M. Rossi</TD>
<TD headers="t2">5</TD>
<TD headers="t3">Decaffeinato</TD>
<TD headers="t4">Si</TD>
</TR>
</TABLE>
Priorità 2 - Impaginare con le tabelle
Usare le tabelle in modo corretto significa non utilizzarle per impaginare. Nello specifico:
Quindi la riga giusta di comando è la seguente:
<TD> <DIV style="font-weight: bold">testo in grassetto</DIV></TD>
e non:
<TH>Dammi un testo in grassetto</TH>
Priorità 3 - Sommari e abbreviazioni
Sarebbe, inoltre, opportuno inserire durante la realizzazione delle tabelle: