Formation I.S.N.

Tableaux en Html

L'élément <table> sert à représenter des tableaux.
Les balises indispensables pour définir un tableau sont :

  • les balises <table>...</table> qui déclarent la création du tableau ;
  • les balises <tr>...</tr> (table row) qui définissent une nouvelle ligne du tableau ;
  • les balises <td>...</td> (table data) qui définissent une nouvelle cellule du tableau dans la ligne.

Un premier exemple

Le code entré ci-dessous sert à obtenir le tableau ci-contre.
Par défaut, les cellules ne sont pas encadrées, les colonnes sont alignées et il y a un retour à la ligne à chaque nouvelle ligne.

En ajoutant le fichier .css ci-dessous (et en créant le lien adéquat dans la partie <head> du fichier Html), on peut finalement afficher les bordures autour des cellules et du tableau :

Lorsqu'une cellule doit servir de titre (en première colonne ou première ligne), on peut utiliser les balises <th>...</th> au lieu de <td>...</td>. L'exercice n°1 permet de travailler cette situation.

Un second exemple - Cellules particulières

On peut également séparer le tableau en une partie en-tête et une partie corps du tableau :

  • les balises <thead> </thead> encadrent l'en-tête.
  • les balises <th> </th> définissent une cellule d'en-tête du tableau.
  • les balises <tbody> </tbody> encadrent le corps du tableau.
tableau

Dans l'exemple ci-dessus, vous pouvez constater :

  • qu'en général les navigateurs centrent par défaut le texte dans une cellule d'entête, mais pas dans une cellule de données.
  • que la largeur d'une colonne s'adapte par défaut au plus long contenu d'une cellule de la colonne.

Un dernier exemple - La fusion de cellules

On peut regrouper (fusionner) des cellules, c'est-à-dire faire en sorte qu'une cellule occupe plusieurs lignes ou plusieurs colonnes. Pour cela, on affecte les éléments cellule <td> ou <th> avec les attributs :

  • rowspan="", à compléter par le nombre entier (y compris la cellule portant cet attribut) de cellules à fusionner.
  • colspan="", à compléter par le nombre entier (y compris la cellule portant cet attribut) de cellules à fusionner.

Donner un code permettant de réaliser le tableau ci-dessous (le code css pour la mise en forme est déjà écrit et lié au code par un fichier .css, on ne vous demande pas ici d'écrire ce code css, ce code css est reproduit sous l'énoncé).

  • Code Css correspondant
  • Affichage à obtenir ?
  • Une solution ?

Donner le code nécessaire pour réaliser le tableau ci-dessous (ici encore, le code css est déjà écrit et lié au code html) :

  • Code Css correspondant
  • Affichage à obtenir ?
  • Une solution ?