Header – Design by Stelva
Module 6 : CSS Grid
Module 6 : CSS Grid – Cours HTML/CSS

Introduction à CSS Grid

Si Flexbox est parfait pour aligner des éléments sur un axe, CSS Grid est l’outil ultime pour créer des mises en page complexes en deux dimensions (lignes et colonnes).

1. Qu’est-ce que CSS Grid ?

CSS Grid est un système de mise en page qui vous permet de diviser une page en plusieurs régions principales. Il est idéal pour organiser la structure globale d’un site web, comme un en-tête, une barre latérale, le contenu principal et un pied de page.

2. Activer une grille

Pour transformer un conteneur en grille, il suffit d’appliquer display: grid;. Tous ses enfants deviennent alors des « items » de la grille, prêts à être placés.

3. Définir des colonnes et lignes

On utilise grid-template-columns et grid-template-rows pour définir la structure. L’unité fr (fraction) est très utile pour créer des colonnes flexibles qui s’adaptent à l’espace disponible.

.container {
  display: grid;
  grid-template-columns: 200px 1fr 200px;
  grid-template-rows: 100px auto 50px;
}

4. Placer les éléments

Par défaut, les éléments se placent automatiquement. Mais vous pouvez les positionner précisément sur la grille en indiquant les lignes de début et de fin.

.item1 {
  grid-column: 1 / 3; /* Commence à la ligne 1, finit avant la 3 */
  grid-row: 1 / 2;    /* Occupe la première ligne */
}

5. Un exemple concret

Voici une mise en page de site simple réalisée avec Grid :

<!-- HTML -->
<div class="container">
  <header>Header</header>
  <main>Contenu</main>
  <footer>Footer</footer>
</div>

<!-- CSS -->
.container {
  display: grid;
  grid-template-columns: 1fr; /* Une seule colonne */
  grid-template-rows: 100px auto 50px; /* Header, Main, Footer */
  gap: 10px;
}

6. Différence avec Flexbox

Utilisez Grid pour la mise en page globale de votre page (la structure principale) et Flexbox pour aligner les éléments à l’intérieur de chaque zone de la grille (par exemple, pour centrer les liens dans votre menu de navigation).

📝 Exercice pratique

Créez une page avec une grille complexe : un en-tête et un pied de page qui prennent toute la largeur, et une zone centrale avec un menu à gauche, un contenu principal flexible et une barre latérale à droite.

Indice : vous aurez besoin de grid-template-columns et de grid-column pour placer chaque élément.

📌 Mots-clés à retenir

display: grid
Active le mode grille sur un conteneur.
grid-template-columns / rows
Définit le nombre et la taille des colonnes et des lignes.
fr
Unité flexible qui représente une fraction de l’espace disponible.
gap
Définit l’espace entre les cases de la grille.
grid-column / grid-row
Place un élément sur une zone précise de la grille.
📝

Fiche d’Exercices du Module 6

Téléchargez le PDF pour construire des mises en page complexes avec Grid.

Télécharger

Prêt pour la suite ?

Maintenant que vous savez créer des mises en page complexes, il est temps de les rendre parfaites sur tous les appareils avec le Design Responsive.

Tags

Laisser un commentaire

En savoir plus sur DesignbyStelva

Abonnez-vous pour poursuivre la lecture et avoir accès à l’ensemble des archives.

Poursuivre la lecture