Conseils
Une <section>
est un élément HTML utilisé pour regrouper du contenu et des
composants. Le composant de section inclut les fonctionnalités suivantes :
- Section : Un élément HTML qui agit comme un conteneur pour le contenu et les composants.
- Conteneur : Les conteneurs sont utilisés à l’intérieur des sections pour structurer les mises en page et définir la largeur maximale des contenus.
- Espacement : Les valeurs d’espacement prédéfinies sont utilisées pour appliquer un remplissage vertical au contenu.
- Couleur de fond ou image : L’arrière-plan du composant de section peut être blanc (couleur par défaut), gris ou une image.
À faire
- Englobez tout le contenu de la page dans une
<section>
, au minimum. - Utilisez des sections pour regrouper le contenu et les composants thématiques.
- Assurez-vous que les titres des sections commencent au niveau
<h2>
, car il s’agit de nouvelles sections au sein d’une même page. - Vérifiez quels types de composants peuvent être utilisés dans chaque type de section. Certains composants ne doivent jamais être utilisés dans les sections à l’arrière-plan gris ou comportant une image.
- Appliquez des styles de fond aux sections pour ajouter un intérêt visuel et découper les longues pages où l’utilisateur passe d’un type de contenu ou de composant à un autre.
À ne pas faire
- N’abusez pas des sections à fond gris ou comportant des images. Elles sont conçues pour mettre du contenu en valeur.
- N’utilisez pas de sections avec des fonds gris ou des images pour mettre en valeur un gros titre ou une petite quantité de contenu. Utilisez plutôt un encadré ou un appel à l'action.
- N’utilisez pas de sections avec des fonds gris ou des images sur une page qui inclut un élément de navigation dans la page situé ailleurs que sous le contenu principal.
- N’utilisez pas d’images de fond qui contiennent du texte, des logos ou des illustrations, ou qui apparaissent floues, déformées ou pixelisées.
Section
Il s’agit de l’élément par défaut utilisé pour englober le contenu et les composants d’une page. Il est caractérisé par un fond blanc et un conteneur réactif qui vous permet de créer des système de grille.
En-tête de section
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
HTML
<section>
<div class="container">
<h2>En-tête de section</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</p>
</div>
</section>
Section grise
La section grise peut être utilisée avec la plupart des types de contenu et de composants. Vous devez cependant l’éviter lorsque la section contient des blocs de contenu avec icônes et des tableaux.
En-tête de section
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
HTML
<section class="gnb-section-gray">
<div class="container">
<h2>En-tête de section</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</p>
</div>
</section>
Section avec image
Les sections avec une image de fond peuvent uniquement être utilisées avec certains types de composants, dont les boutons, les cartes, les différents types d’accordéons , et les blocs de contenu (sans icônes).
Ajoutez l’image de fond personnalisée à l’aide de code CSS intraligne. L’image sera redimensionnée en fonction de la largeur de l’écran. La taille d’image idéale a une largeur comprise entre 1440 et 1920 pixels, une hauteur maximale de 1080 pixels et est optimisée pour ne pas dépasser 160 ko. Ce composant ajoutera une couche noire pour s’assurer qu’il y a suffisamment de contraste entre l’image et le texte. Toutefois, les images pâles ou lumineuses ne sont pas recommandées. Votre image personnalisée ne doit pas contenir de texte, de logo ou d’illustration ni apparaître floue, déformée ou pixelisée.
Vous pouvez utiliser un outil en ligne gratuit et accessible en source libre Squoosh pour rogner, optimiser et redimensionner vos images.
En-tête de section
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
HTML
<section class="gnb-section-image" style="background-image: url(img/votre-image.jpg)">
<div class="container">
<h2>En-tête de section</h2>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</p>
</div>
</section>
Espacement des sections
Les sections sont généralement précédées et suivies d’espaces blancs de taille suffisante, assurés
par les éléments enfants. La marge supérieure des titres <h2>
crée par exemple un
espace blanc uniforme au-dessus des sections. D’autres éléments, comme les balises
<p>
, les composants ou les balises qui englobent des groupes de composants, sont
dotés de marges inférieures qui fournissent suffisamment d’espace au bas de la section.
Lorsque les éléments enfants de la section ne prévoient pas suffisamment d’espace blanc, vous pouvez utiliser des classes utilitaires d’espacement pour appliquer plus de remplissage à la section.
Classes utilitaires
Les classes utilitaires sont appliquées à l’élément <section>
. Elles peuvent être
appliquées de manière uniforme aux parties supérieure et inférieure ou être agencées de manière à
appliquer plus ou moins de remplissage aux deux parties. Elles assurent un meilleur équilibre visuel
et tiennent compte de l’espacement déjà fourni par les éléments enfants de la section.
Taille | Valeur | Classe (remplissage supérieur) | Classe (remplissage inférieur) |
---|---|---|---|
aucun | 0 | .padding-top-none |
.padding-bottom-none |
xxs | 0.25rem (4px) | .padding-top-xxs |
.padding-bottom-xxs |
xs | 0.5rem (8px) | .padding-top-xs |
.padding-bottom-xs |
sm | 1rem (16px) | .padding-top-sm |
.padding-bottom-sm |
md | 1.5rem (24px) | .padding-top-md |
.padding-bottom-md |
lg | 2rem (32px) | .padding-top-lg |
.padding-bottom-lg |
xl | 3rem (48px) | .padding-top-xl |
.padding-bottom-xl |
xxl | 4rem (64px) | .padding-top-xxl |
.padding-bottom-xxl |
Exemple 1
Dans cet exemple, la section ne comporte pas de titre. Il est recommandé d’attribuer un titre
<h2>
à toutes les nouvelles sections, de sorte que l’espace vertical requis soit
inclus au haut de chaque section. Dans ce cas, vous devez ajouter un peu de remplissage à l’aide des
classes utilitaires.
Ne faites pas cela.
Exemple 2
L’ajout d’une classe utilitaire .padding-top-lg
à la section vous permet d’ajouter
l’espace blanc manquant en haut de la section.
Faites plutôt ceci.
HTML
<section class="gnb-section-gray padding-top-lg">
<div class="container">
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</p>
</div>
</section>
Section avec composants
Lorsque vous regroupez des composants à l’intérieur d’une section, assurez-vous de les insérer à l’intérieur du conteneur et de suivre tous les conseils relatifs aux groupes de composants. Certains composants, comme les cartes, les blocs de contenu et les listes de contenu , doivent être entourés de classes englobantes pour que les composants enfants puissent s’aligner et se répartir correctement. Voici un exemple :
En-tête de section
En-tête de carte
Lorem ipsum dolor sit amet, consectetur adipiscing elit sodales volutpat risus tempus id.
En-tête de carte
Lorem ipsum dolor sit amet, consectetur adipiscing elit sodales volutpat risus tempus id.
En-tête de carte
Lorem ipsum dolor sit amet, consectetur adipiscing elit sodales volutpat risus tempus id.
HTML
<section class="gnb-section-gray">
<div class="container">
<h2>En-tête de section</h2>
<div class="gnb-card-group">
<div class="row row-cols-1 row-cols-md-2 row-cols-lg-3">
<div class="col">
<div class="gnb-card">
<div class="gnb-card-body">
<h3><a href="#">En-tête de carte</a></h3>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit sodales volutpat risus tempus id.
</p>
</div>
</div>
</div>
<div class="col">
<div class="gnb-card">
<div class="gnb-card-body">
<h3><a href="#">En-tête de carte</a></h3>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit sodales volutpat risus tempus id.
</p>
</div>
</div>
</div>
<div class="col">
<div class="gnb-card">
<div class="gnb-card-body">
<h3><a href="#">En-tête de carte</a></h3>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit sodales volutpat risus tempus id.
</p>
</div>
</div>
</div>
</div>
</div>
</div>
</section>