Avec l'utilisation du Responsive Web Design, les techniques de mise en page des sites web ont beaucoup évolué ces dernières années ; de nouveaux modules du W3C ont fait leur apparition tels que Flexbox pour concevoir des mises en page flexibles et Grid pour des mises en page en grille.
Ce support s'adresse aux concepteurs de sites web et aux designers web ayant déjà la maîtrise de l'HTML5 et des CSS 3 qui souhaitent apprendre à...
Avec l'utilisation du Responsive Web Design, les techniques de mise en page des sites web ont beaucoup évolué ces dernières années ; de nouveaux modules du W3C ont fait leur apparition tels que Flexbox pour concevoir des mises en page flexibles et Grid pour des mises en page en grille.
Ce support s'adresse aux concepteurs de sites web et aux designers web ayant déjà la maîtrise de l'HTML5 et des CSS 3 qui souhaitent apprendre à utiliser Flexbox et Grid pour les aider à concevoir des sites web modernes et responsives.
La première partie est consacrée au module CSS Flexible Box Layout (usuellement nommé Flexbox) qui va vous permettre de créer des composants flexibles pour vos mises en page : des barres de navigation, des formulaires, des galeries photo, des mises en page avec des cartes, etc. Dans un premier temps, nous aborderons la création du conteneur parent qui va déterminer la direction d'affichage de ses éléments enfants. Puis, nous étudierons toutes les propriétés d'alignement des éléments enfants constituant la mise en page avec les nombreuses propriétés CSS dédiées. Nous terminerons cette première partie par la conception de nombreux composants et mises en page responsives.
La deuxième partie porte sur le module CSS Grid Layout (couramment nommé Grid). Ce module CSS va vous permettre de concevoir des mises en page sous forme de grille très élaborée. Nous étudierons la création du conteneur de grille parent avec les lignes, les colonnes et les gouttières. Nous étudierons aussi les propriétés de positionnement dans cette grille. Nous apprendrons à placer et à aligner les éléments enfants dans ces grilles afin de créer des mises en page bien structurées et responsives. Nous terminerons cette partie par l'étude concrète de nombreux exemples de mises en page avec des grilles fluides, responsives et imbriquées.
Les exemples de code utilisés dans le livre sont disponibles en téléchargement sur le site des Editions ENI www.editions-eni.fr.
3. Le conteneur avec un affichage en blocs en ligne
Chapitre 2 : Le flux des enfants flexibles
A. Définir la direction
1. La propriété de direction
2. La direction horizontale en ligne
3. La direction verticale en colonne
B. Contrôler le flux des éléments enfants
1. Gérer le passage à la ligne
2. La propriété pour aller à la ligne
3. La propriété raccourcie
C. Le flux des éléments en blocs
Chapitre 3 : Les alignements des enfants flexibles
A. Les alignements sur l'axe principal
1. Les alignements sur l'axe horizontal
2. Les alignements sur l'axe vertical
B. Les alignements sur l'axe secondaire
1. Les alignements sur l'axe vertical
2. Les alignements sur l'axe horizontal
C. Les alignements et le passage à la ligne
D. Les alignements sur les deux axes
1. Détermination des axes
2. L'axe principal horizontal
3. L'axe principal vertical
Chapitre 4 : Les propriétés des enfants flexibles
A. Introduction
B. Modifier l'ordre d'affichage des enfants
C. Modifier l'alignement des enfants
D. Autoriser l'agrandissement des enfants
E. Autoriser le rétrécissement des éléments enfants
F. Définir la largeur des éléments enfants
G. La syntaxe raccourcie des propriétés individuelles
H. Créer une mise en page fluide
1. La structure initiale
2. Autoriser l'agrandissement des enfants
3. Créer un comportement flexible individuel
I. Les dimensions appliquées
Chapitre 5 : Des exemples de composants flexibles
A. Créer des barres de navigation
1. Création d'une barre de menu simple
2. Création d'une barre de menu responsive
3. Création d'une barre de menu avec des icônes
B. Exploiter les alignements des blocs
1. Centrer un élément enfant dans un parent
2. Aligner une image et du texte
3. Répartir uniformément des éléments verticalement
4. Aligner régulièrement des images
C. Créer des formulaires
1. Créer un champ de recherche de taille adaptée
2. Créer un formulaire complet
Chapitre 6 : Des exemples de mise en page flexible
A. Une mise en page plein écran et responsive
1. Les affichages obtenus
2. La structure flexible de la mise en page
3. Les propriétés pour l'élément <body>
4. Les propriétés pour l'élément <main>
5. Les propriétés CSS pour la mise en forme générale
6. La mise en page responsive
7. Le code complet de l'exemple
B. Une autre mise en page plein écran
1. La structure de la mise en page
2. La règle CSS de <body>
3. Les règles CSS de <nav>
4. La règle CSS de la boîte du contenu
5. La règle CSS de l'en-tête et du pied de page
6. La règle CSS de la zone principale
7. La règle CSS de l'article
8. La règle CSS pour la colonne latérale
9. Les autres règles CSS pour la mise en forme
10. Le code complet de cet exemple
C. Créer une mise en page avec des cartes
1. Les affichages de la page
2. La structure de la page
3. Les règles CSS générales
4. La mise en page flexible et responsive
5. La gestion des liens
6. Le code complet de cet exemple
Chapitre 7 : Les mises en page en grille
A. La conception de grille de mise en page
B. Le vocabulaire des grilles
C. Une mise en page très simple en grille
D. Les outils pour les concepteurs
1. Utiliser Mozilla Firefox
2. Les outils dédiés aux grilles
Chapitre 8 : La structure de la grille
A. Le conteneur de grille
B. La déclaration des colonnes
C. La déclaration des lignes
D. La syntaxe raccourcie
E. Utiliser l'unité fraction
F. Utiliser des valeurs minimales et maximales
G. Utiliser des valeurs répétées
H. Insérer des gouttières
1. Définir des gouttières
2. Les gouttières horizontales
3. Les gouttières verticales
4. La syntaxe raccourcie pour les gouttières
I. Le remplissage interne du conteneur
J. La couleur d'arrière-plan du conteneur
Chapitre 9 : Le positionnement dans la grille
A. Positionner automatiquement les éléments dans la grille
1. La position des enfants
2. Les enfants supplémentaires
3. La largeur des colonnes supplémentaires
4. La hauteur des lignes supplémentaires
B. Placer les éléments sur les lignes
1. La structure de la mise en page souhaitée
2. Placer les éléments sur les lignes de la grille
3. Rendre la grille responsive
C. Exploiter toutes les numérotations des lignes
1. La structure HTML et les CSS initiales
2. Utiliser les numéros négatifs
3. Utiliser les numéros implicites
D. Nommer les lignes de la grille
E. Nommer des zones de la grille
F. Fusionner des cellules
Chapitre 10 : Gérer les éléments enfants dans la grille
A. Modifier l'ordre d'affichage des enfants dans la grille
B. Aligner les cellules dans la grille
1. Le module CSS pour les alignements
2. La structure et les CSS utilisées
3. Les alignements sur l'axe horizontal
4. Les alignements sur l'axe vertical
C. Aligner les enfants dans la grille
1. Aligner horizontalement les enfants dans leur cellule
2. Aligner verticalement les éléments enfants dans leur cellule
3. Aligner les éléments enfants sur les deux axes dans leur cellule
D. Aligner un élément enfant dans la grille
Chapitre 11 : Exemples de mise en page avec des grilles
A. Une mise en page responsive
1. Les affichages responsives
2. La structure HTML de la grille
3. Les styles CSS en Mobile First
4. La requête de média pour les écrans des tablettes
5. La requête de média pour les grands écrans
6. Le code complet de la grille responsive
B. Une mise en page avec deux grilles imbriquées
1. La structure HTML de la grille imbriquée
2. Les règles CSS de la grille parente
3. Les règles CSS de la grille imbriquée
4. Le code complet des grilles imbriquées
C. Une galerie d'images fluide
1. La structure HTML de la galerie
2. La règle CSS pour le conteneur de la grille
3. Les règles CSS pour le positionnement des images
4. Les règles CSS pour la mise en forme
5. Le code complet de la galerie
D. Une mise en page fluide avec des cartes
1. Les affichages fluides
2. La structure de la mise en page
3. Les styles pour la grille
4. La mise en forme des cartes
5. Les styles pour la mise en forme
6. Le code complet de cette mise en page
E. Une mise en page fluide avec des fusions de cellules
1. Les affichages fluides de la grille
2. La structure de la grille
3. Le style CSS pour la grille
4. Les styles CSS pour placer les éléments de la grille
5. Les autres styles de mise en forme
6. Le code complet de la grille fluide
Index
Christophe AUBRY
Responsable pédagogique dans un centre de formation et formateur sur les technologies Web et les Arts graphiques pendant plus de quinze ans, Christophe AUBRY est aujourd'hui dirigeant de la société netPlume spécialisée dans la rédaction pédagogique et la création de sites internet. Auteur de nombreux livres et vidéos aux Editions ENI (HTML/CSS, RWD, WordPress, Drupal, Joomla…), il reste au fait des nouveautés concernant la conception des sites web en effectuant une veille technologique régulière. Il est également le créateur de la chaîne YouTube LaTeX et la plume.