<colgroup>

L'élément HTML <colgroup> définit un groupe de colonnes au sein d'un tableau.

Catégories de contenu Aucune.
Contenu autorisé Si l'attribut span est présent : aucun car c'est un élément vide.
Si l'attribut n'est pas présent, zéro ou plusieurs éléments <col>.
Omission de balises La balise de début peut être absente si le premier élément fils <col> et que celui-ci n'est pas précédé par un élément <colgroup> dont la balise de fin est absente. La balise de fin peut être absente s'il n'est pas suivi par un blanc ou par un commentaire.
Éléments parents autorisés Un élément <table>. <colgroup> doit apparaître après tout élément  <caption> optionnel et avant tout élément <thead>, <th>, <tbody>, <tfoot> et <tr>.
Interface DOM HTMLTableColElement

Attributs

Comme pour tous les éléments, on peut utiliser les attributs universels sur cet élément.

align Obsolète depuis HTML4.01, Obsolète depuis HTML5
Cet attribut à valeur contrainte définit l'alignement horizontal pour le contenu de chaque cellule de la colonne. Les valeurs possibles sont :
  • left : le contenu de la cellule est alligné à gauche de la cellule
  • center : le contenu de la cellule est centré horizontalement
  • right : le contenu de la cellule est aligné à droite de la cellule
  • justify : insère des espaces dans le contenu textuel afin que le contenu de la cellule soit justifié
  • char : aligne le contenu textuel de la cellule selon un caractère spécial avec un décalage minimum définis par les attributs  char et charoff Non implémenté (voir bug 2212).

Si cet attribut n'est pas renseigné, la valeur left sera prise comme valeur par défaut. Les éléments <col> descendants peuvent surcharger cette valeur en utilisant leur attribut align.

Notes : Cet attribut est devenu obsolète et n'est plus supporté dans le dernier standard
  • Pour réaliser les mêmes effets que les valeurs left, center, right ou justify :
    • Ne pas utiliser la propriété text-align sur un sélecteur renvoyant un élement <colgroup>. Les éléments <td> ne sont pas des descendants de l'élément <colgroup> il n'hériteront pas de cette propriété.
    • Si le tableau n'utilise pas l'attribut colspan, il est possible d'utiliser le sélecteur CSS tr:nth-child(an+b) avec a le nombre total de colonnes du tableau et b la position ordinale de la colonne. Une fois que ce selecteur a été utilisé, la propriété text-align peut être utilisée.
    • Si le tableau utilise l'attribut colspan, l'effet peut être réalisé en combinant différents sélecteurs CSS comme [colspan=n]. Cependant cela n'est pas trivial à réaliser.
  • Pour réaliser le même effet qu'avec la valeur char. Il est possible, en CSS3, d'utiliser la valeur de l'attribut char comme valeur de la propriété text-align. Non implémenté.
bgcolor
Cet attribut définit la couleur d'arrière-plan de toutes les cellules des colonnes appartenant au groupe de colonnes. C'est un code à 6 chiffres hexadécimaux tel que défini par le sRGB, précédé d'un '#'. Un de ces seize mots-clés, comme présentés ci-dessous, peut être utilisé.
  black = "#000000"   green = "#008000"
  silver = "#C0C0C0"   lime = "#00FF00"
  gray = "#808080"   olive = "#808000"
  white = "#FFFFFF"   yellow = "#FFFF00"
  maroon = "#800000"   navy = "#000080"
  red = "#FF0000"   blue = "#0000FF"
  purple = "#800080"   teal = "#008080"
  fuchsia = "#FF00FF"   aqua = "#00FFFF"
Note d'utilisation : Il est fortement conseillé de ne pas utiliser cet attribut car celui-ci n'est pas un attribut standard et n'a été implémenté que sous certaines versions d'Internet Explorer. L'élément <colgroup> doit être mis en forme grâce au CSS. Pour fournir un effet semblable à celui réalisé par l'attribut bgcolor, il est possible d'utiliser la propriété CSS background-color sur les éléments  <td> souhaités.
char Obsolète depuis HTML4.01, Obsolète depuis HTML5
Cet attribut spécifie l'alignement du contenu d'un groupe de colonnes en fonction d'un caractère.
 Les valeurs généralement utilisées pour cet attribut contiennent généralement un point (.) pour aligner des nombres ou des valeurs monétaires. Si l'attribut align ne vaut pas char, l'attribut est ignoré. Cet attribut peut être surchargé avec l'attribut align de chacun des éléments <col> appartenant au groupe de colonnes.
Note d'utilisation : Cet attribut est obsolète et il est donc fortement déconseillé de l'utiliser. De fait, il n'est pas supporté par le dernier standard. Pour réaliser le même effet qu'avec char, on pourra utiliser CSS3 en attribuant la même valeur à la propriété text-align.Non implémenté.
charoff Obsolète depuis HTML4.01, Obsolète depuis HTML5
Cet attribut est utilisé pour indiquer le décalage, en nombre de caractères, depuis le caractère définit par l'attribut char à appliquer au contenu des cellules.
Note d'utilisation: Cet attribut ne doit plus être utilisé car il est maintenant obsolète et n'est plus supporté dans le dernier standard.
span
La valeur de cet attribut est un entier positif indiquant le nombre de colonnes consécutives sur lesquelles appliquer les attributs de l'élément. S'il est absent, sa valeur par défaut est 1.
Note : Cet attribut s'applique aux attributs des colonnes du groupe. Il n'a pas d'effet sur les différentes règles CSS associées au groupe ou aux cellules des colonnes de ce groupe.. L'attribut span peut ne pas être présent s'il y a un ou plusieurs éléments <col> au sein de <colgroup>.
valign Obsolète depuis HTML4.01, Obsolète depuis HTML5
Cet attribut définit l'alignement vertical du texte des cellules de la colonne. Les valeurs possibles de cet attribut sont :
  • baseline : qui alignera le texte à la ligne la plus basse possible en utilisant la ligne de base des caractères. Si les caractères ont tous la même taille, cela aura le même effet que la valeur bottom.
  • bottom : qui placera le texte au plus bas de la cellule
  • middle : qui centrera verticalement le texte dans la cellule
  • top : qui placera le texte au plus haut de la cellule.
Notes d'utilisation : Cet attribut étant maintenant obsolète (et n'étant plus supporté), il est fortement déconseillé de l'utiliser.
  • Il ne faut pas essayer de régler la propriété vertical-align sur un sélecteur retournant un élément <colgroup>. En effet les éléments <td> n'étant pas des descendants de l'élément <colgroup> ils n'hériteront pas de la propriété.
  • Si le tableau n'utilise pas d'attribut colspan il est possible d'utiliser le sélecteur CSS tr:nth-child(an+b) avec a le nombre de colonne du tableau et b la position ordinale de la colonne dans le tableau puis d'utiliser la propriété vertical-align sur le sélecteur.
  • Si le tableau n'utilise pas l'attribut colspan l'effet peut être obtenu avec une combinaison de différents sélecteurs CSS comme [colspan=n]. Cependant cela n'est pas trivial à réaliser.
width Obsolète depuis HTML5
Cet attribut définit la largeur par défaut pour chaque colonne dans le groupe de colonnes. En plus de la notation standard en pixels et en pourcents, cet attribut peut prendre la valeur spéciale 0*, indiquant ainsi que la largeur de chaque colonne doit être suffisante pour contenir les contenus des cellules. On peut également utiliser cette notation de manière relative (par exemple 0.5*).

Exemples

HTML

<table>
 <colgroup>
  <col class="premiereColonne">
  <col class="deuxDernieresColonnes" span="2">
 </colgroup>
 <tr>
  <th>Citron vert</th>
  <th>Citron</th>
  <th>Orange</th>
 </tr>
 <tr>
  <td>Vert</td>
  <td>Jaune</td>
  <td>Orange</td>
 </tr>
</table>

Résultat

Note : On pourra consulter la page <table> pour d'autres exemples sur les tableaux.

Spécifications

Spécification État Commentaires
WHATWG HTML Living Standard
La définition de '<colgroup>' dans cette spécification.
Standard évolutif  
HTML5
La définition de '<colgroup>' dans cette spécification.
Recommendation  
HTML 4.01 Specification
La définition de '<colgroup>' dans cette spécification.
Recommendation  

Compatibilité des navigateurs

Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari
Support simple 1.0 1.0 (1.7 ou moins) (Oui) (Oui) (Oui)
Attribut align/valign ? Pas de support bug 915 ? ? ?
Attribut char/charoff ? Pas de support bug 2212 ? ? ?
Attribut bgcolor ? Pas de support (Oui) ? ?
Fonctionnalité Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support simple ? 1.0 (1.0) ? ? ?
Attribut align/valign ? Pas de support bug 915 ? ? ?
Attribut char/charoff ? Pas de support bug 2212 ? ? ?
Attribut bgcolor ? Pas de support ? ? ?

Voir aussi

  • Les autres éléments HTML liés aux tableaux :
  • Les propriétés et pseudo-classes CSS qui peuvent s'avérer utiles pour mettre en forme l'élément <col> :
    • la propriété width pour contrôler la largeur de la colonne
    • la pseudo-classe :nth-child pour définir l'alignement des cellules d'une colonne
    • la propriété text-align pour aligner le contenu de cellules sur le même caractère (par exemple un point « . »).

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : SphinxKnight, msherefel, tregagnon
 Dernière mise à jour par : SphinxKnight,