Le tabelle di layout sono un problema
Scoprire perché le tabelle usate per il layout confondono gli screen reader
Le tabelle di layout sono un problema è una lezione Web Accessibility Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Web Accessibility Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Web Accessibility Academy include 4 lezioni in totale.
Un tempo le tabelle venivano usate per il layout
Anni fa gli sviluppatori costruivano i layout delle pagine con l'elemento table. Questa abitudine persiste nel vecchio codice e continua ancora oggi a causare seri problemi di accessibilità.
Perché le tabelle di layout sono dannose
Un lettore di schermo tratta ogni tabella come dati. Annuncia righe, colonne e numero di celle per il Suo layout, sommergendo gli utenti con una struttura priva di significato.
L'ordine di lettura non è corretto
Le tabelle di layout spesso distribuiscono il contenuto nelle celle secondo una sequenza confusa. L'ordine visivo e l'ordine di lettura divergono, lasciando gli utenti disorientati.
Usi CSS per il layout
Il layout moderno appartiene a CSS. Scelga flexbox o grid per disporre una pagina e mantenga l'elemento table solo per dati realmente tabellari.
.cards { display: grid; grid-template-columns: 1fr 1fr; }Flexbox per una dimensione
Quando dispone gli elementi in una riga o in una colonna, flexbox è lo strumento naturale. Si adatta al contenuto senza introdurre semantica da tabella.
.row { display: flex; gap: 1rem; }Grid per due dimensioni
Per gestire insieme righe e colonne, CSS grid offre un vero sistema di layout. Separa l'aspetto della pagina dal significato del markup.
La semantica rimane pulita
Con il layout CSS, il Suo HTML può usare veri landmark come header, nav e main. Gli utenti di lettori di schermo ricevono una mappa significativa invece di un conteggio di celle.
L'ultima risorsa: role=presentation
Se non può davvero rimuovere una tabella di layout obsoleta, aggiunga role=presentation. In questo modo elimina la semantica della tabella, così le tecnologie assistive ignorano la griglia.
<table role="presentation"> ... </table>Presentation è una soluzione provvisoria, non un piano
Consideri role=presentation una soluzione temporanea. La correzione reale consiste nel passare a CSS, rimuovendo il problema invece di nasconderlo soltanto.
Come individuare una tabella di layout
L'assenza di caption e th, insieme a celle che contengono intere sezioni invece di valori, è un segnale d'allarme. Questo schema indica quasi sempre una tabella di layout da rifattorizzare.
Una tabella, uno scopo
Si ponga una domanda semplice per ogni tabella: presenta dati organizzati in righe e colonne di valori correlati? In caso contrario, è una tabella di layout che dovrebbe essere sostituita da CSS.
Verifica rapida
Ha ereditato una pagina che usa una tabella esclusivamente per posizionare colonne di contenuto.
Riepilogo: tabelle per i dati, CSS per il layout
Non usi mai una table per il layout di una pagina. Usi flexbox o grid, riservi table ai dati reali e consideri role=presentation solo una soluzione temporanea per il codice obsoleto.
Impara HTML con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 30
- Lezioni
- 120
Domande Frequenti
La lezione «Le tabelle di layout sono un problema» è gratuita?
Sì — il testo completo di «Le tabelle di layout sono un problema» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Web Accessibility Academy, passa a CoddyKit PRO. Il corso Web Accessibility Academy include 4 lezioni in totale.
Cosa imparerò in «Le tabelle di layout sono un problema»?
Scoprire perché le tabelle usate per il layout confondono gli screen reader Eserciti Web Accessibility Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Web Accessibility Academy?
Non è richiesta alcuna esperienza precedente. Web Accessibility Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Le tabelle di layout sono un problema»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Web Accessibility Academy?
Sì. Ogni lezione Web Accessibility Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- th, scope e l'elemento caption
- Intestazioni di righe e colonne nel modo giusto
- Tabelle complesse: abbinare headers e id
- Le tabelle di layout sono un problema