La mise en page web complexe peut être un défi sans les bons outils.
Sans Flexbox ou Grid, organiser des éléments de manière efficace peut rapidement devenir fastidieux.
Cet article vous guide à travers un exercice pratique avec Tailwind CSS pour renforcer vos compétences en Flexbox.
Maîtrisez Tailwind CSS : De l'installation à l'optimisation avancée
Nous vous proposons maintenant un nouvel exercice pour consolider vos compétences en CSS Flexbox avec Tailwind CSS . Préparez-vous à relever ce défi pratique qui vous permettra de mettre en œuvre tout ce que vous avez appris. Passons ensemble à la découverte de cet exercice et à l’application concrète de vos connaissances dès maintenant !
Exercice Flexbox avec Tailwind CSS
L’exercice que nous allons réaliser maintenant ressemble beaucoup à ce qu’on a vu avec Grid CSS sauf qu’on va plutôt l’appliquer avec Flexbox :
Voici un petit défi : essayez de créer cette mise en page avant de consulter la correction, en suivant ces instructions :
- Commencez par structurer la page avec les éléments header , main , et footer .
- Utilisez Flexbox pour organiser les éléments à l’intérieur de la balise main pour la version desktop.
- N’oubliez pas d’utiliser Grid pour gérer la hauteur des sections.
- Enfin, adaptez l’ensemble de la mise en page pour la version mobile.
Bases de Flexbox avec Tailwind CSS
Pour commencer l’exercice, voici le code de départ que vous utiliserez. Il est structuré de la manière suivante :
Pour réaliser cela, vous pouvez :
- Regarder le code ci-après :
header
section
- Ou bien voir le CodePen correspondant à la base de cet exercice :
CodePen : Découvrez le code pour commencer l’exercice sur Flexbox dans ce lien CodePen.
See the Pen Application fondamentaux de jQuery by Alphorm (@alphorm) on CodePen.
Déjà, nous allons partir de cette base pour faire, cette fois-ci, la version desktop en premier lieu, votre mission sera donc de réaliser les modifications suivantes :
- Dans la balise main , créez un conteneur flex pour organiser les éléments.
- Utilisez la classe basis-1/4 pour définir la largeur du nav et de l’ aside , qui occuperont chacun un quart de l’espace.
- Pour la section principale article , appliquez basis-1/2 , afin qu’elle occupe la moitié de la largeur totale, au centre de la page.
- Assurez-vous que l’agencement soit équilibré avec ces proportions, en répartissant correctement l’espace entre les trois sections.
Vous devrez obtenir quelque chose qui ressemble à ceci :
Combiner Grid CSS et Flexbox
La prochaine étape, c’est de définir la hauteur de nos balises, on n’a pas vu comment faire cela avec Flexbox donc on retourne pour demander un peu d’aide à notre ami CSS Grid.
Si vous avez bien suivi l’exercice précédent, voici les étapes que vous devrez suivre :
- Déclarer la balise body en tant que conteneur Grid , ce qui vous permettra de structurer facilement les différentes sections de la page.
- Ensuite, utilisez la classegrid-rows-[100px_auto_100px]pour définir la hauteur des trois parties principales :header,main, etfooter. Cela vous permettra de donner une hauteur fixe auxheaderetfootertout en laissant la partie centrale (main) occuper l’espace restant.
- N’oubliez pas d’appliquer h-screen sur le body afin qu’il prenne toute la hauteur de l’écran.
Cette méthode vous permettra d’obtenir un bon résultat.
Créer un design Flexbox responsive
La dernière étape de l’exercice consiste à adapter la mise en page pour la version mobile.
Pour y parvenir, vous devrez effectuer les modifications suivantes dans la balise main :
- Activez le mode flex uniquement pour les écrans larges ( lg et au-delà) afin que les éléments soient disposés horizontalement sur ces écrans.
- Réorganisez l’ordre d’affichage des éléments en définissant un ordre spécifique pour les grands écrans et un ordre par défaut pour les petits écrans (version mobile) en jouant avec la classe order .
- Utilisez Grid pour définir la hauteur des éléments dans la version mobile avec la classe grid-rows-[auto_100px_100px] . Les deux dernières hauteurs (100px chacune) seront attribuées aux balises nav et aside , assurant ainsi une présentation cohérente et fonctionnelle sur les petits écrans.
En appliquant ces ajustements, la mise en page s’adaptera parfaitement aux écrans mobiles tout en restant optimisée pour les écrans plus grands.
Nous arrivons ainsi à la fin de cet exercice. Pour celles et ceux qui ont rencontré des difficultés, pas de souci. Je mets à votre disposition la correction complète dans le code et le lien vers le CodePen suivant :
- Code :
header
section
- CodePen :
CodePen : Cliquer sur la figure suivante pour voir le résultat de l’exercice 4
See the Pen Application fondamentaux de jQuery by Alphorm (@alphorm) on CodePen.
Formez-vous gratuitement avec Alphorm !
Maîtrisez les compétences clés en IT grâce à nos formations gratuites et accélérez votre carrière dès aujourd'hui.
FAQ
Comment utiliser Flexbox avec Tailwind CSS ?
Comment combiner Flexbox et Grid CSS pour la mise en page ?
Comment rendre un design Flexbox responsive ?
Quels sont les avantages de Flexbox par rapport à Grid ?
Quel est le rôle de Tailwind CSS dans l'utilisation de Flexbox ?
Conclusion
En explorant cet exercice, vous avez découvert les multiples facettes de Flexbox avec Tailwind CSS. Comment allez-vous appliquer ces techniques dans vos projets futurs ?