Aller au contenu
M04 · C. Mettre en forme une page web avec les feuilles de style CSS

Introduire le CSS : règles, sélecteurs et couleurs

Écrire des règles CSS, choisir la bonne façon d'intégrer le CSS, coder les couleurs et les unités, et cibler les éléments avec les sélecteurs simples, complexes et les pseudo-classes.

1Situer

La page du restaurant La Sardine est complète, mais elle a l'air d'un document Word de 1995 : texte noir sur fond blanc, police par défaut, liens bleus soulignés. Le patron veut les couleurs de la mer, un titre centré et des liens qui changent de couleur au survol. C'est le travail du CSS.

2Comprendre

Quelle règle CSS gagne ? La spécificité
style.css p { color: black; } 0-0-1 .plat { color: teal; } 0-1-0 #special { color: red; } 1-0-0 ✓ index.html <p class="plat"    id="special"> Paella royale</p> RENDU Paella royale Paella royale Paella royale Paella royale id (1-0-0) > classe, :hover (0-1-0) > balise (0-0-1) À égalité : la dernière règle écrite gagne.

Un même paragraphe est visé par trois règles qui donnent chacune une couleur différente. Laquelle s'applique ?

1 / 5

Le CSS (Cascading Style Sheets) décrit la présentation de la page. Le HTML dit « ceci est un titre », le CSS dit « les titres sont bleus et centrés ».

Une règle CSS

h1 {
  color: #0b5394;
  text-align: center;
}
  • h1 est le sélecteur : il choisit les éléments ;
  • color: #0b5394; est une déclaration : une propriété et sa valeur.

Les types d’intégration

MéthodeOùUsage
externe<link rel="stylesheet" href="style.css">la bonne pratique
interne<style> dans le <head>une page isolée
en ligneattribut style="..."à éviter

Les couleurs

red (nom) · #c0392b (hexadécimal) · rgb(192, 57, 43) · rgba(0, 0, 0, 0.5) (avec transparence) · hsl(6, 63%, 46%).

Les unités de mesure

UnitéSignification
pxpixel, taille fixe
%pourcentage du parent
emrelatif à la taille de police du parent
remrelatif à la taille de police de la page (conseillé pour les textes)
vw, vh1 % de la largeur / hauteur de l’écran

Polices et alignement

font-family: Arial, sans-serif; · font-size: 1.2rem; · font-weight: bold; · text-align: left | center | right | justify;

Les sélecteurs

SélecteurCible
ptoutes les balises p
.platles éléments de classe plat
#menul’élément d’id menu
nav ales liens dans nav (descendants)
ul > liles li enfants directs de ul
h2 + ple p qui suit immédiatement un h2
h1, h2les h1 et les h2
a:hoverun lien survolé (pseudo-classe)
li:first-child, li:nth-child(2)le premier, le deuxième élément
input:focusle champ actif

La cascade

Quand plusieurs règles visent le même élément, la plus spécifique gagne (id > classe > balise). À égalité, c’est la dernière écrite.

Exemple simple

Le pinceau et le pochoir

Le sélecteur est le pochoir : il choisit quelles parties de la page recevront la peinture. Les déclarations sont la peinture : la couleur, la taille, la police.

h1 {                 /* sélecteur : tous les h1 */
  color: #0b5394;    /* propriété : valeur */
  text-align: center;
}
Exemple simple

L'uniforme et le badge

Une classe, c'est un uniforme : plusieurs éléments peuvent le porter. Un id, c'est un badge nominatif : un seul élément le porte dans la page.

.plat { color: teal; }      /* class="plat" : plusieurs */
#menu { background: #eef; } /* id="menu" : un seul */

3Manipuler

Ouvrez l'onglet style.css et mettez la page aux couleurs de la mer. Les consignes vérifient le rendu réel de la page.
Ouvrir dans le lab ↗
  • Centrez le titre h1 (text-align)
  • Donnez une couleur de fond à toute la page (background-color sur body)
  • Mettez les plats (classe .plat) en gras
  • Mettez le plat spécial (.special) en rouge rgb(192, 57, 43)
  • Supprimez le soulignement des liens du menu (nav a)

4Pratiquer

Exercice 1 · Lire une règle

Que fait cette règle ? nav a:hover { color: white; background: #0b5394; }

Voir le corrigé
Quand la souris survole (:hover) un lien situé dans le <nav>,
son texte devient blanc et son fond bleu foncé.

Exercice 2 · Trois façons d'intégrer le CSS

Écrivez la même couleur rouge pour un paragraphe : (1) en style en ligne ; (2) dans une balise <style> ; (3) dans un fichier externe style.css lié à la page. Laquelle préférer ?

Voir le corrigé
1. <p style="color: red;">...</p>
2. <style> p { color: red; } </style>   (dans le <head>)
3. <link rel="stylesheet" href="style.css">  + dans style.css : p { color: red; }
On préfère le fichier externe : un seul fichier pour tout le site,
mis en cache par le navigateur.

Exercice 3 · Les sélecteurs

Écrivez le sélecteur pour : (1) tous les paragraphes ; (2) les éléments de classe prix ; (3) l'élément d'id contact ; (4) les liens dans le footer ; (5) le premier élément d'une liste.

Voir le corrigé
1. p
2. .prix
3. #contact
4. footer a
5. li:first-child

5Vérifier

1. Quel sélecteur cible les éléments qui ont class="prix" ?
2. Que représente la couleur #ffffff ?
3. Si deux règles se contredisent, laquelle s'applique ?