Numérique et Sciences Informatiques > Internet et le Web > Langages du Web (HTML, CSS, JavaScript - Notions de Base) > CSS : mise en forme (sélecteurs, propriétés)

Comprendre les Sélecteurs CSS et les Propriétés de Mise en Forme

Ce guide complet explique les sélecteurs CSS (class, id, balises) et les propriétés de mise en forme (couleurs, polices, marges, padding) avec des exemples clairs pour les élèves de lycée en NSI.

Introduction aux Sélecteurs CSS

Les sélecteurs CSS sont la base du style web. Ils permettent de cibler les éléments HTML auxquels vous souhaitez appliquer des styles. Imaginez que vous soyez un peintre et que les sélecteurs soient les outils qui vous permettent de choisir quelles parties de votre toile vous allez peindre. Il existe plusieurs types de sélecteurs, chacun ayant ses propres utilisations et priorités.

Les Sélecteurs de Balise (Éléments)

Le sélecteur de balise est le plus simple. Il cible tous les éléments du même type. Par exemple, si vous voulez que tous les paragraphes de votre page soient rouges, vous utiliserez le sélecteur p. Voici un exemple :

p {
  color: red;
}

Ce code CSS rendra tout le texte des balises <p> rouge.

Les Sélecteurs de Classe

Les sélecteurs de classe permettent de cibler des éléments en fonction de l'attribut class qui leur est attribué. Ils commencent par un point (.). Par exemple, si vous avez un élément avec la classe important, vous pouvez le cibler avec .important. Ceci est utile pour appliquer un style spécifique à certains éléments seulement.

Exemple :

.important {
  font-weight: bold;
}

Ce code rendra le texte de tous les éléments avec la classe important en gras.

Les Sélecteurs d'ID

Les sélecteurs d'ID sont utilisés pour cibler un élément unique sur une page. Ils commencent par un dièse (#). Chaque ID doit être unique. Par exemple, pour cibler un élément avec l'ID titre-principal, vous utiliserez #titre-principal. C'est utile pour cibler des éléments spécifiques, comme un titre principal ou un menu de navigation.

Exemple :

#titre-principal {
  font-size: 2em;
  text-align: center;
}

Ce code agrandit et centre le texte de l'élément avec l'ID titre-principal.

Autres Sélecteurs Utiles

Il existe de nombreux autres sélecteurs CSS, comme les sélecteurs d'attribut (par exemple, [type="text"] pour cibler tous les éléments input de type texte), les pseudo-classes (par exemple, :hover pour cibler un élément lorsque la souris le survole) et les pseudo-éléments (par exemple, ::before pour insérer du contenu avant un élément). Explorer ces sélecteurs plus avancés vous donnera encore plus de contrôle sur le style de vos pages web. Vous pouvez explorer les sélecteurs d'enfants, d'adjacents, etc.

Introduction aux Propriétés CSS

Les propriétés CSS définissent l'apparence des éléments HTML. Elles permettent de contrôler la couleur, la police, la taille, l'espacement, et bien plus encore. Chaque propriété a une ou plusieurs valeurs possibles. Par exemple, la propriété color peut prendre des valeurs comme red, #FF0000, ou rgb(255, 0, 0).

Couleurs et Arrière-plans

La propriété color définit la couleur du texte. La propriété background-color définit la couleur de l'arrière-plan. Vous pouvez utiliser des noms de couleurs (comme red, blue, green), des codes hexadécimaux (comme #FF0000, #0000FF, #00FF00), ou des valeurs RGB (comme rgb(255, 0, 0), rgb(0, 0, 255), rgb(0, 255, 0)). Vous pouvez également utiliser la propriété background-image pour ajouter une image en arrière-plan.

Exemple :

body {
  background-color: #f0f0f0;
  color: #333;
}

Ce code définit un arrière-plan gris clair et un texte gris foncé pour le corps de la page.

Polices

La propriété font-family définit la police de caractère à utiliser. Il est recommandé de spécifier plusieurs polices, dans l'ordre de préférence, pour que le navigateur puisse utiliser une police de remplacement si la première n'est pas disponible. La propriété font-size définit la taille de la police. La propriété font-weight définit l'épaisseur de la police (par exemple, bold pour gras). La propriété font-style permet de mettre le texte en italique (italic).

Exemple :

p {
  font-family: Arial, sans-serif;
  font-size: 16px;
}

Ce code définit la police Arial (ou une police sans-serif si Arial n'est pas disponible) et une taille de 16 pixels pour tous les paragraphes.

Marges et Padding

Les marges (margin) définissent l'espace autour d'un élément, à l'extérieur de sa bordure. Le padding (padding) définit l'espace à l'intérieur d'un élément, entre son contenu et sa bordure. Vous pouvez spécifier des marges et du padding pour chaque côté d'un élément (margin-top, margin-right, margin-bottom, margin-left, padding-top, padding-right, padding-bottom, padding-left) ou utiliser la notation raccourcie (margin: top right bottom left).

Exemple :

div {
  margin: 10px;
  padding: 20px;
  border: 1px solid black;
}

Ce code ajoute une marge de 10 pixels autour de chaque <div>, un padding de 20 pixels à l'intérieur, et une bordure noire de 1 pixel.

Boîte (Box Model)

Le modèle de boîte CSS (Box Model) est fondamental pour comprendre comment les éléments HTML sont rendus sur une page web. Chaque élément est considéré comme une boîte rectangulaire, composée de plusieurs couches :

  • Contenu (Content) : C'est le contenu de l'élément lui-même, comme le texte, les images, etc. Ses dimensions sont définies par les propriétés width et height.
  • Padding : L'espace entre le contenu et la bordure. Il est défini par la propriété padding.
  • Bordure (Border) : Une ligne qui entoure le padding et le contenu. Son style, sa largeur et sa couleur sont définis par la propriété border.
  • Marge (Margin) : L'espace autour de la bordure, qui sépare l'élément des autres éléments de la page. Elle est définie par la propriété margin.

Comprendre le modèle de boîte est essentiel pour contrôler précisément l'espacement et la disposition des éléments sur votre page web. Il est particulièrement important de noter que la largeur et la hauteur d'un élément sont calculées en incluant le padding et la bordure (par défaut). Vous pouvez modifier ce comportement avec la propriété box-sizing.

Ce qu'il faut retenir

  • Les sélecteurs CSS permettent de cibler les éléments HTML auxquels appliquer des styles.
  • Les sélecteurs de balise ciblent tous les éléments du même type (ex: p).
  • Les sélecteurs de classe ciblent les éléments avec une classe spécifique (ex: .important).
  • Les sélecteurs d'ID ciblent un élément unique (ex: #titre-principal).
  • Les propriétés CSS définissent l'apparence des éléments HTML.
  • color définit la couleur du texte, background-color définit la couleur de l'arrière-plan.
  • font-family définit la police de caractère, font-size définit la taille de la police.
  • margin définit l'espace autour d'un élément, padding définit l'espace à l'intérieur d'un élément.
  • Le modèle de boîte (Box Model) est la base pour comprendre comment les éléments HTML sont affichés.

FAQ

  • Quelle est la différence entre un sélecteur de classe et un sélecteur d'ID ?

    Un sélecteur de classe cible tous les éléments ayant la même classe, tandis qu'un sélecteur d'ID cible un seul élément (celui avec l'ID correspondant). Les ID doivent être uniques sur une page.
  • Comment puis-je spécifier une couleur en CSS ?

    Vous pouvez utiliser des noms de couleurs (comme red), des codes hexadécimaux (comme #FF0000), ou des valeurs RGB (comme rgb(255, 0, 0)).
  • Qu'est-ce que le modèle de boîte (Box Model) en CSS ?

    Le modèle de boîte décrit la structure de chaque élément HTML comme une boîte rectangulaire, composée du contenu, du padding, de la bordure et de la marge. Comprendre ce modèle est crucial pour contrôler l'espacement et la disposition des éléments.