HTML - En-têtes et légende

-

En-têtes de tableau

Définir les en-têtes de tableau

Dans les tableaux HTML, les en-têtes étiquettent les colonnes ou les lignes de données. Pour définir un en-tête de tableau, utilisez la balise <th>. La balise <th> est placée à l'intérieur de la balise <tr> (ligne de tableau), comme les cellules de tableau normales (<td>). La principale différence entre les balises <th> et <td> est que <th> est utilisée pour les cellules d'en-tête, qui ont généralement une police en gras et un alignement de texte centré par défaut.

Conseil: Comment définir les en-têtes de tableau

<table>
  <tr>
    <th>En-tête 1</th>
    <th>En-tête 2</th>
    <th>En-tête 3</th>
  </tr>
  <tr>
    <td>Donnée 1</td>
    <td>Donnée 2</td>
    <td>Donnée 3</td>
  </tr>
</table>

La première ligne contient trois balises <th>, définissant les en-têtes pour chaque colonne. La deuxième ligne contient des balises <td> normales avec les données réelles.

Attributs des en-têtes de tableau

Les en-têtes de tableau ont quelques attributs spéciaux qui peuvent être utilisés pour améliorer la structure et l'accessibilité du tableau :

  1. colspan : L'attribut colspan permet à une cellule d'en-tête de s'étendre sur plusieurs colonnes. Par exemple, <th colspan="2">En-tête</th> créerait une cellule d'en-tête qui s'étend sur deux colonnes.

  2. rowspan : L'attribut rowspan permet à une cellule d'en-tête de s'étendre sur plusieurs lignes. Par exemple, <th rowspan="3">En-tête</th> créerait une cellule d'en-tête qui s'étend sur trois lignes.

  3. scope : L'attribut scope est utilisé pour associer une cellule d'en-tête aux cellules de données qu'elle décrit. C'est important pour l'accessibilité, car cela aide les lecteurs d'écran à comprendre la relation entre les en-têtes et les données. L'attribut scope peut avoir les valeurs suivantes :

    • row : L'en-tête s'applique à la ligne.
    • col : L'en-tête s'applique à la colonne.
    • rowgroup : L'en-tête s'applique à un groupe de lignes.
    • colgroup : L'en-tête s'applique à un groupe de colonnes.

Conseil: Utilisation des attributs d'en-tête de tableau

<table>
  <tr>
    <th colspan="2">En-tête 1 & 2</th>
    <th>En-tête 3</th>
  </tr>
  <tr>
    <th rowspan="2" scope="row">En-tête 4</th>
    <td>Donnée 1</td>
    <td>Donnée 2</td>
  </tr>
  <tr>
    <td>Donnée 3</td>
    <td>Donnée 4</td>
  </tr>
</table>

La première cellule d'en-tête s'étend sur deux colonnes en utilisant colspan, la quatrième cellule d'en-tête s'étend sur deux lignes en utilisant rowspan, et l'attribut scope est utilisé pour indiquer que le quatrième en-tête s'applique à la ligne.

L'utilisation d'en-têtes de tableau avec les attributs appropriés aide à créer des tableaux bien structurés et accessibles en HTML.

Légende du tableau

Ajouter une légende à un tableau

Une légende de tableau est une brève description du contenu ou de l'objectif du tableau. Pour ajouter une légende à un tableau HTML, utilisez la balise <caption>. La balise <caption> doit être placée juste après la balise d'ouverture <table>, avant tout élément <tr>, <th> ou <td>.

Conseil: Tableau HTML avec légende

<table>
  <caption>Données salariales des employés</caption>
  <tr>
    <th>Nom</th>
    <th>Poste</th>
    <th>Salaire</th>
  </tr>
  <tr>
    <td>John Doe</td>
    <td>Manager</td>
    <td>80 000 €</td>
  </tr>
  <tr>
    <td>Jane Smith</td>
    <td>Développeuse</td>
    <td>75 000 €</td>
  </tr>
</table>

Styliser les légendes de tableau

Par défaut, les légendes de tableau sont affichées au-dessus du tableau et centrées. Cependant, vous pouvez utiliser CSS pour styliser et positionner la légende selon vos besoins.

Pour styliser une légende de tableau, ciblez l'élément <caption> dans votre CSS :

Conseil: Style CSS pour la légende du tableau

table caption {
  font-size: 1.2em;
  font-weight: bold;
  color: #333;
  margin-bottom: 10px;
}

Pour positionner la légende en dessous du tableau au lieu d'au-dessus, utilisez la propriété CSS caption-side :

Conseil: Positionnement CSS pour la légende du tableau

table caption {
  caption-side: bottom;
}

La propriété caption-side accepte deux valeurs : top (par défaut) et bottom.

En utilisant la balise <caption> et en la stylisant avec CSS, vous pouvez fournir une description claire et attrayante pour vos tableaux HTML.

Considérations d'accessibilité

Lors de la création de tableaux HTML, il est important de prendre en compte l'accessibilité pour les utilisateurs qui dépendent de technologies d'assistance comme les lecteurs d'écran. Les en-têtes et les légendes de tableaux jouent un rôle dans l'accessibilité et la compréhension des tableaux pour tous les utilisateurs.

L'utilisation d'en-têtes de tableau (<th>) est importante pour les lecteurs d'écran car ils fournissent un contexte et une structure aux données du tableau. Les lecteurs d'écran annoncent le texte de l'en-tête avant de lire les cellules de données correspondantes, aidant ainsi les utilisateurs à comprendre la relation entre les en-têtes et les données. Cela facilite la navigation et la compréhension du contenu du tableau pour les utilisateurs.

Pour améliorer l'accessibilité, utilisez l'attribut scope sur les cellules d'en-tête pour définir l'association entre les en-têtes et les cellules de données. L'attribut scope peut avoir des valeurs comme row, col, rowgroup, ou colgroup, selon que l'en-tête s'applique à une ligne, une colonne, ou un groupe de lignes ou de colonnes.

Conseil: Tableau avec l'attribut scope

<table>
  <tr>
    <th scope="col">En-tête 1</th>
    <th scope="col">En-tête 2</th>
  </tr>
  <tr>
    <th scope="row">En-tête de ligne</th>
    <td>Données</td>
  </tr>
</table>

Fournir une légende à l'aide de la balise <caption> est également important pour l'accessibilité. La légende doit décrire le contenu ou l'objectif du tableau, donnant aux utilisateurs un aperçu de ce que représente le tableau. Les lecteurs d'écran annoncent la légende avant de lire le tableau, fournissant ainsi un contexte aux utilisateurs.

Conseil: Tableau avec légende

<table>
  <caption>Rapport mensuel des ventes</caption>
  ...
</table>

Lors de la rédaction des légendes, soyez descriptif et concis. Évitez d'utiliser des légendes génériques comme "Tableau 1" ou "Tableau de données", car elles ne fournissent pas d'informations utiles sur le contenu du tableau.

En utilisant des en-têtes de tableau avec des attributs scope et en fournissant des légendes, vous pouvez améliorer l'accessibilité de vos tableaux HTML, les rendant plus inclusifs et conviviaux pour tous les utilisateurs, y compris ceux qui dépendent de technologies d'assistance.

Exemples et démonstrations

Pour comprendre comment utiliser les en-têtes et les légendes de tableau en HTML, examinons quelques extraits de code et exemples.

Conseil: Tableau avec légende et en-têtes

<table>
  <caption>Notes des étudiants</caption>
  <tr>
    <th scope="col">Nom</th>
    <th scope="col">Mathématiques</th>
    <th scope="col">Sciences</th>
    <th scope="col">Anglais</th>
  </tr>
  <tr>
    <td>Alice</td>
    <td>90</td>
    <td>85</td>
    <td>92</td>
  </tr>
  <tr>
    <td>Bob</td>
    <td>80</td>
    <td>88</td>
    <td>79</td>
  </tr>
  <tr>
    <td>Charlie</td>
    <td>95</td>
    <td>92</td>
    <td>88</td>
  </tr>
</table>

Cet exemple montre un tableau avec une légende décrivant le contenu du tableau ("Notes des étudiants") et des en-têtes pour chaque colonne ("Nom", "Mathématiques", "Sciences" et "Anglais"). L'attribut scope associe les en-têtes à leurs colonnes.

Le tableau ressemble à ceci :

Notes des étudiants
Nom Mathématiques Sciences Anglais
Alice 90 85 92
Bob 80 88 79
Charlie 95 92 88

Conseil: Tableau avec colspan et rowspan

<table>
  <caption>Inventaire des produits</caption>
  <tr>
    <th rowspan="2">Catégorie</th>
    <th colspan="3">Produit</th>
  </tr>
  <tr>
    <th>Nom</th>
    <th>Prix</th>
    <th>Quantité</th>
  </tr>
  <tr>
    <td>Électronique</td>
    <td>Smartphone</td>
    <td>599 €</td>
    <td>100</td>
  </tr>
  <tr>
    <td>Électronique</td>
    <td>Ordinateur portable</td>
    <td>999 €</td>
    <td>50</td>
  </tr>
  <tr>
    <td>Vêtements</td>
    <td>T-shirt</td>
    <td>19 €</td>
    <td>200</td>
  </tr>
</table>

Dans cet exemple, la première cellule d'en-tête s'étend sur deux lignes avec rowspan="2", et la deuxième cellule d'en-tête s'étend sur trois colonnes avec colspan="3". Le résultat est une structure de tableau plus complexe :

Inventaire des produits
Catégorie Produit
Nom Prix Quantité
Électronique Smartphone 599 € 100
Électronique Ordinateur portable 999 € 50
Vêtements T-shirt 19 € 200

Ces exemples montrent comment les en-têtes et les légendes de tableau peuvent créer des tableaux clairs et bien structurés en HTML. En utilisant des attributs comme scope, colspan et rowspan, vous pouvez créer des tableaux faciles à lire et à comprendre, tant visuellement que pour les technologies d'assistance.