Langues

Ceci est une traduction. Elle peut avoir des erreurs ou être dépassée par rapport à la version anglaise. Traducteur(-trice): Laurent Carcone

Feuilles de style pour le Web - Trucs & astuces CSS

Voir également l'index de tous les trucs et astuces.

Règles 'pair' et 'impair'

Une des façons d'améliorer la lisibilité des grandes tables est de mettre en couleur ses rangées alternativement. Dans la table ci-dessous par exemple, les rangées pair ont une couleur de fond gris-clair et les rangées impair une couleur de fond blanc. Les règles CSS pour exprimer cela sont très simples:

tr:nth-child(even) {background: #CCC}
tr:nth-child(odd) {background: #FFF}
Month '94 '95 '96 '97 '98 '99 '00 '01 '02
Jan 14 13 14 13 14 11 11 11 11
Feb 13 15 12 15 15 12 14 13 13
Mar 16 15 14 17 16 15 14 15 15
Apr 17 16 17 17 17 15 15 16 16
May 21 20 20 21 22 20 21 20 19
Jun 24 23 25 24 25 23 25 23 24
Jul 29 28 26 26 27 26 25 26 25
Aug 29 28 27 28 28 27 26 28 26
Sep 24 23 23 26 24 24 24 22 21
Oct 20 22 20 22 20 19 20 22
Nov 18 17 16 17 16 15 14 15
Dec 15 13 13 14 13 10 13 11

En réalité, CSS autorise non seulement les alternances pair/impair mais également les alternances sur n'importe quel interval. Les mots clé 'even' et 'odd' sont juste des raccourcis. Par exemple, pour une longue liste vous pouvez faire ceci:

li:nth-child(5n+3) {font-weight: bold}

Cela stipule que tous les 5ème éléments de liste à partir du 3ème inclus seront en gras, c'est à dire les éléments numerotés 3, 8, 13, 18, 23, etc.

Colonnes paires et impaires

Les mêmes règles s'appliquent également pour les colonnes des tables, mais il doit y avoir un élément dans le document qui corresponde à la colonne. HTML founit l'élément COL pour cela. La table doit débuter avec un élément COL pour chaque colonne:

<table>
<col><col><col><col><col><col><col><col><col><col>
<tr><th>Month<th>'94<th>'95<th>'96...

(COL n'est pas limité à l'application de style mais dans ce cas, nous avons juste besoin que les éléments COL soient présents). Les règles suivantes stipulent que la première colonne à un fond jaune et que chaque deuxième colonne en commençant à la colonne 3 a un fond gris:

col:first-child {background: #FF0}
col:nth-child(2n+3) {background: #CCC}
Month '94 '95 '96 '97 '98 '99 '00 '01 '02
Jan 14 13 14 13 14 11 11 11 11
Feb 13 15 12 15 15 12 14 13 13
Mar 16 15 14 17 16 15 14 15 15
Apr 17 16 17 17 17 15 15 16 16
May 21 20 20 21 22 20 21 20 19
Jun 24 23 25 24 25 23 25 23 24
Jul 29 28 26 26 27 26 25 26 25
Aug 29 28 27 28 28 27 26 28 26
Sep 24 23 23 26 24 24 24 22 21
Oct 20 22 20 22 20 19 20 22
Nov 18 17 16 17 16 15 14 15
Dec 15 13 13 14 13 10 13 11

Le fond des rangées (TR) est appliqué par dessus le fond des colonnes (COL), donc si vous voulez être certain que le fond appliqué aux colonnes soit visible, vous ne devriez pas définir de fond pour les rangées.

Bert Bos, coordinateur de l'activité style
Copyright © 1994–2017 W3C®

Created 6 Febrary 2003;
Last updated jeu. 09 nov. 2017 04:40:59 UTC

Langues

À propos des traductions