Adloun

CSS : mettre en forme le Web (école d'ingénieur) · Chapitre 8 · Exercice de TD

Un catalogue parfaitement aligné

Grid · niveau 3 (difficile)

Énoncé

Dans le catalogue de la Librairie, le titre « Introduction à l'algorithmique » tient sur deux lignes : dans sa rangée, son auteur et son rayon sont plus bas que ceux des autres cartes (seuls les prix sont alignés, grâce à margin-top: auto). Sans toucher au HTML, ni à la feuille style.css, écrire une feuille supplémentaire subgrid-catalogue.css qui aligne, dans chaque rangée de cartes, les couvertures, les titres, les auteurs, les rayons et les prix. Rappel : chaque carte <article class="carte"> a cinq enfants et est enveloppée dans un <li>.

Corrigé

Chaque <li> est un élément de la grille .cartes ; on lui fait occuper cinq rangées et on fait de lui une sous-grille. La carte, son unique enfant, fait de même ; ses cinq enfants s'alignent alors sur les rangées de la grille des cartes.


.cartes > li {
  grid-row: span 5;
  grid-template-rows: subgrid;
  row-gap: 0;
}

.carte {
  display: grid;
  grid-row: span 5;
  grid-template-rows: subgrid;
  row-gap: 0;
}

Les <li> sont déjà des grilles (display: grid dans style.css) ; la carte, elle, était une boîte flexible et devient une grille. Le row-gap: 0 supprime la gouttière de 1.5rem entre les rangées d'une même carte. Dans Chromium (page code/ch8/exercices/subgrid-catalogue.html, à 900 pixels), les trois auteurs de la première rangée sont à la même ordonnée, 340,48 pixels, au lieu de 427,38, 448,48 et 427,38 sans sous-grille ; il en va de même des titres, des rayons et des prix.

100 % gratuit

La suite du chapitre est sur Adloun

Exercice suivant et tuteur

Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.

Le cours du chapitre · Tous les exercices du chapitre

Exercice suivant et tuteur →