Vous souhaitez créer des mises en page web adaptatives mais ne savez pas par où commencer.
Cela peut entraîner des designs peu attrayants qui ne s’ajustent pas correctement sur les différents appareils, frustrant ainsi les utilisateurs.
À travers cet article, découvrez comment utiliser CSS Grid et Tailwind pour concevoir des mises en page réactives et structurées.
Maîtrisez Tailwind CSS : De l'installation à l'optimisation avancée
Il est temps de vous proposer un nouvel exercice pour mettre en pratique vos connaissances sur CSS Grid et les media queries avec Tailwind CSS . Préparez-vous à explorer ce défi pratique et appliquer ce que vous avez appris. Découvrons ensemble l’exercice dès maintenant.
Exercice CSS Grid avec Tailwind CSS
Cette fois-ci, nous allons réaliser la mise en page d’une page web qui s’adapte selon la taille de l’écran de l’utilisateur.
Si vous avez bien suivis le cours, vous serez capable de réaliser cet exercice les yeux fermés. D’abord vous devez remarquer que :
- Pour le design mobile :nous avons une seule colonne avec la partiearticlequi est plus ou moins grand par rapport aux autres et dont l’ordre d’apparition a également changé.
- Pour le design desktop :vous avez leheaderet lefooterqui sont fixes avec les éléments principaux de la page qui occupe3 colonnesqui sontnav,articleetaside.
Pour réaliser ceci, vous avez évidemment besoin de faire appel aux médias queries et le reste n’est qu’un petit jeu avec CSS Grid. Donc essayez de réaliser l’exercice par vous-même avant de passer dans la partie suivante où l’on va montrer comment arriver à ce résultat petit à petit.
Débuter avec Tailwind CSS Grid
Afin que tout le monde parte sur une bonne base, nous allons vous donner le code qui va servir de base de l’exercice et qui ressemblera à ça :
Pour réaliser cela, vous pouvez :
- Regarder le code ci-après :
header
article
- Ou bien voir le CodePen correspondant à la base de cet exercice :
CodePen : Découvrez le code pour commencer l’exercice sur CSS Grid avec Tailwind.
See the Pen Application fondamentaux de jQuery by Alphorm (@alphorm) on CodePen.
Déjà, nous allons partir de cette base car elle se rapproche de la version mobile de l’exercice que nous voulons réaliser.
Et pour arriver au résultat dans la présentation de l’exercice, vous allez devoir effectuer les manipulations suivantes :
- Déclarer la balise body comme étant le conteneur avec grid puis mettre des gouttières de valeur 4px (gap-1)
- Ajouter 5 lignes où le header , le footer , le nav et l’ aside occupe une hauteur de 70px tandis que l’article occupe l’espace restante.
- Sans oublier de poser une hauteur au body pour que tout occupe l’entièreté de l’écran.
C’est ce que vous devez réaliser dans la première partie de cet exercice, une fois cela fait vous pouvez passer à la suite pour rendre le design responsive.
Design responsive avec media queries
L’objectif à présent est de pouvoir transformer notre mise en page quand on bascule sur des grands écrans en quelque chose comme ceci :
Pour y arriver, il faut premièrement choisir un média querie. Pour cet exercice nous allons utiliser lg : qui va ajouter un média querie pour les écrans larges.
Après, il y a une suite de modification que vous allez devoir réaliser :
- Définir la mise en page sur trois colonnes pour les écrans larges avec 200px des deux côtés et une valeur qui s’adapte au milieu.
- Faire en sorte que le header et le footer occupe les 3 trois colonnes et débute sur la première colonne toujours pour les écrans larges.
- Enfin, il faudra ajouter des lignes pour les grands écrans avec 70px pour le header et le footer et une valeur automatique au milieu.
À ce stade vous devrez obtenir quelque chose comme ceci :
Que vois-je ? La place de l’article devrait normalement se trouver au milieu mais ici il se place directement après le header comme dans le code HTML. Pour résoudre cela, je vous propose deux techniques dans la prochaine partie.
Utiliser col-start et row-start en CSS
Alors la première approche c’est de définir un col-start et un row-start à l’article afin qu’il se place derrière nav. On sait que pour cela :
- Il doit d’abord se mettre sur la deuxième colonne avec lg :col-start-2mais cela va casser la mise en page comme ceci :
- Puis on ajouter la classelg :row-start-2à l’article afin l’espace inutilisé devant celui-ci sois remplis parnav.
Optimiser l'ordre des éléments CSS
La deuxième technique qui parlera certainement plus aux gens et que je considère comme étant une bonne pratique est l’utilisation de la classe order qui fonctionne tout aussi bien comme le nom de sa propriété CSS. Dans notre cas nous allons l’utiliser ainsi :
- Ajouter la classelg :order-{n}oùnvariera de1 à 5sur la séquence suivanteheader > nav > article > aside > footer. Vous devrez alors obtenir quelques choses comme ce code :
Voilà si vous essayez de redimensionner la fenêtre de votre navigateur, vous allez obtenir l’effet escompté.
C’est ainsi que se termine notre petit exercice pour celles et ceux qui ont eu quelques difficultés, ne vous inquiétez pas. Je mets à votre disposition la correction dans le code et le CodePen suivant :
- Code :
header
article
- CodePen :
CodePen : Cliquer sur la figure suivante pour voir le résultat de l’exercice 3.
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 CSS Grid avec Tailwind CSS ?
Comment rendre une mise en page responsive avec Tailwind CSS ?
Quelles sont les bonnes pratiques pour un design adaptatif ?
Comment utiliser les media queries avec Tailwind CSS ?
Comment organiser le contenu avec CSS Grid pour un site web ?
Conclusion
En maîtrisant CSS Grid avec Tailwind, vous pouvez créer des mises en page web fluides et adaptatives. Quelle autre technique aimeriez-vous explorer pour améliorer vos compétences en design web adaptatif ?