3.2.3 Les tableaux de mise en page n'utilisent pas de balises sémantiques
Si vous utilisez un tableau de mise en page, il ne peut pas être marqué par des balises structurantes comme la balise th ou la balise caption.
Pourquoi?
Lorsque les éléments table, tr et td sont utilisés pour placer les différents éléments d'une certaine manière sur une page, plutôt que pour organiser des données sous des en-têtes de ligne et de colonnes correspondantes, on parlera de tableau de mise en page. Le fait de ne pas utiliser les balises sémantiques th ou caption pour les tableaux de mise en page, et de les utiliser obligatoirement pour les tableaux de données, permet à un utilisateur de lecteur d'écran de faire la différence entre les deux types de tableaux et donc de lui éviter une confusion possible.
En pratique
L'utilisation de tableaux de mise en page est permise sur les sites qui ont le label AnySurfer mais n'est pas encouragée. Utilisez de préférence CSS au lieu de tableaux pour positionner les éléments sur une page.
Si vous utilisez un tableau de mise en page, il ne peut pas être marqué par des balises structurantes comme la balise th ou la balise caption.
Voyez également les directives sur les tableaux de données.
Exemple de pratique incorrecte
<table summary="layout table" >
<tr>
<th colspan=3>Page Title</th>
</tr>
<tr>
<td bgcolor="#CCCCCC" ><div>navigation content</div></td>
<td bgcolor="#FFFFFF" width="50%"><div>main content</div></td>
<td bgcolor="#CCCCCC"><div>right sidebar content</div></td>
</tr>
<tr>
<td colspan=3>footer</td>
</tr>
</table>