Tailwind CSS est un framework CSS open source. La fonctionnalité principale de cette bibliothèque est, contrairement à d'autres frameworks CSS comme Bootstrap, qu'elle ne procure pas une série de classes prédéfinies pour des éléments tels que des boutons ou des tables. À la place, Tailwind crée une liste de classes CSS « utilitaires » pouvant être utilisés pour ajouter un style à chaque élément en les mélangeant et en les agençant[3],[4].

Tailwind CSS
Description de l'image Tailwind CSS logo with dark text.svg.

Informations
Créateur Adam Wathan, Jonathan Reinink, David Hemphill, et Steve Schoger
Développé par Tailwind Labs[1]
Première version 13 mai 2019 (7 ans, 35 jours)
Dernière version 4.3.1 (12 juin 2026)
Dépôt github.com/tailwindlabs/tailwindcssVoir et modifier les données sur Wikidata
Écrit en CSS
Système d'exploitation Multiplateforme (d)Voir et modifier les données sur Wikidata
Environnement Web
Langues Anglais
Type Framework CSS (en)Voir et modifier les données sur Wikidata
Licence Licence MIT[2]
Site web tailwindcss.com

Par exemple, dans d'autres systèmes, une classe message-warning définirait ensemble un style gras pour le texte avec du jaune en couleur d'arrière-plan alors qu'avec Tailwind, on appliquera respectivement les classes font-bold et bg-yellow-200 de la bibliothèque.

En décembre 2025, Tailwind CSS a plus de 91 000 étoiles sur GitHub[5].

Fonctionnalités

modifier

En raison de la différence sur les concepts de base liés à d'autres frameworks CSS traditionnels tels que Bootstrap, il est important de connaitre la philosophie à partir de laquelle Tailwind a été créé, ainsi que son utilisation de base.

Classes utilitaires

modifier

Le concept utility-first fait référence à la fonctionnalité différentielle principale de Tailwind[6]. Au lieu de créer des classes autour des composantes (bouton, panneau, menu, champ de texte...), les classes sont conçues autour d'un élément de style spécifique (couleur jaune, police de caractère grasse, texte large, élément du centre...). Toutes ces classes sont nommées classes utilitaires (utility classes).

Il y a beaucoup de classes utilitaires dans Tailwind CSS qui permettent de contrôler un grand nombre de propriétés CSS telles que les couleurs, la bordure, le type d'affichage (display), la taille du texte et sa police, la mise en page, l'ombrage...

Exemple: notice jaune
Résultat  
Code
<div class="m-4 p-4 bg-yellow-200 font-bold rounded-lg">
  <p>Please be careful when feeding the birds.</p>
</div>
Classes Tailwind Équivalent CSS
m-4 margin: 1rem;
p-4 padding: 1rem;
bg-yellow-200 background-color: rgba(229, 231, 235, 1);
font-bold font-weight: 700;
rounded-lg border-radius: 0.5rem;

Variantes

modifier

Tailwind offre la possibilité d'appliquer une classe utilitaire uniquement dans certaines situations via des media queries. Ces classes, ayant comme nom « variantes » (variants), servent principalement à créer un site web réactif pour différentes tailles d'écran[7]. Il existe également des variantes pour les différents états qu'un élément peut avoir, tels qu'un hover : lorsque le curseur survole un objet, focus: lorsque le clavier est sélectionné ou active: lorsqu'un objet est utilisé[8], ou lorsque le mode sombre du navigateur ou du système d'exploitation est activé[9].

Les variantes ont deux parties : la condition à respecter et la classe qui sera appliquée si la condition est respectée. Par exemple, la variante md:bg-yellow-400 appliquera la classe bg-yellow-400 si la taille de l'écran est plus grande que la valeur définie pour md.

Tailwind CSS est développé en JavaScript, est exécuté via Node.js, et s'installe avec un gestionnaire de paquets tels que npm ou yarn[10].

Paramètres et thèmes

modifier

Il est possible de paramétrer les classes et les variantes offertes par Tailwind via un fichier de configuration généralement intitulé tailwind.config.js. Dans ce fichier, il est possible de régler les valeurs des classes utilitaires telles que la palette de couleurs ou les tailles de la séparation entre les éléments pour les marges.

Build All et Purge

modifier

Le mode par défaut de Tailwind génère toutes les combinaisons CSS possibles selon les paramètres du projet. Puis, à l'aide d'un autre utilitaire comme PurgeCSS[11], tous les fichiers sont parcourus, et les classes inutilisées sont retirées du fichier CSS.

En raison de la quantité du nombre de classes qui peuvent être générées par le nombre de variantes ainsi que par leurs combinaisons, cette méthode a comme désavantages d'avoir un long temps d'attente ainsi que des fichiers CSS lourds avant d'être purgés. Ce mode opératoire n'est plus disponible dans la version 3 de Tailwind CSS[12].

JIT

modifier

Le mode JIT (Just-In-Time, soit « Juste-À-Temps ») est une manière alternative de générer le CSS qui, au lieu de générer toutes les classes CSS possibles et d'enlever celles qui sont inutilisées, analyse le contenu des fichiers HTML (ou d'extensions configurées ou d'emplacements) et, de manière instantanée, génère uniquement les classes nécessaires et utilisées.

Étant donné que ce ne sont plus toutes les variables qui sont générées, le temps d'attente et la taille des fichiers CSS sont grandement réduits.[réf. nécessaire] Cette amélioration technique a rendu possible l'introduction de plusieurs nouvelles variantes et classes utilitaires, ainsi que la possibilité de créer des classes utilitaires à la volée avec des valeurs arbitraires qui ne sont pas établies dans la configuration.

JIT est devenu le mode par défaut de Tailwind depuis la version 3[12].

Versions

modifier

Tailwind CSS utilise le versionnement sémantique pour identifier la compatibilité avec sa version.

Articles connexes

modifier

Références

modifier
  1. « Tailwind Labs »
  2. « Github: tailwindlabs/tailwindcss, LICENSE »
  3. Ivaylo Gerchev, Tailwind CSS, Sebastopol, O'Reilly Media, 2022 (ISBN 1-0981-4099-0, OCLC 1314257318, lire en ligne)
  4. Noel Rappin, Modern CSS with Tailwind flexible styling without the fuss, Raleigh, 2021 (ISBN 978-1-68050-857-4, OCLC 1277046918, lire en ligne)
  5. « tailwindlabs/tailwindcss », Tailwind Labs, 5 décembre 2022 (consulté le 5 décembre 2022)
  6. (en) « Utility-First - Tailwind CSS », sur tailwindcss.com (consulté le 13 novembre 2021)
  7. (en) « Responsive Design - Tailwind CSS », sur tailwindcss.com (consulté le 13 novembre 2021)
  8. (en) « Hover, Focus, & Other States - Tailwind CSS », sur tailwindcss.com (consulté le 13 novembre 2021)
  9. (en) « Dark Mode - Tailwind CSS », sur tailwindcss.com (consulté le 13 novembre 2021)
  10. (en) « Installation - Tailwind CSS », sur tailwindcss.com (consulté le 13 novembre 2021)
  11. (en) « PurgeCSS - Remove unused CSS, PurgeCSS », sur PurgeCSS (consulté le 1er mai 2025).
  12. a et b (en) « Release v3.0.0-alpha.1 tailwindlabs/tailwindcss », sur GitHub (consulté le 13 novembre 2021)

Liens externes

modifier

📚 Artikel Terkait di Wikipedia

Feuilles de style en cascade

CSS Cascading Style Sheets Logo de CSS. Les feuilles de style en cascade, généralement appelées CSS de l'anglais Cascading Style Sheets, forment un langage

Bootstrap (framework)

et d'applications web. C'est un ensemble qui contient des codes HTML et CSS, des formulaires, boutons, outils de navigation et autres éléments interactifs

Framework

Pour les articles homonymes, voir Framework (homonymie). En programmation informatique, un framework (appelé aussi infrastructure logicielle, infrastructure

Blueprint (framework)

modifier - modifier le code - voir Wikidata (aide) Blueprint est un framework CSS destiné à réduire le temps de développement et assurer la compatibilité

Bulma (framework)

versions modifier - modifier le code - voir Wikidata (aide) Bulma est un framework CSS développé par Jeremy Thomas, sous licence MIT. Bulma est aussi semblable

Framework d'interface

System, framework CSS d'IBM Spectrum CSS, framework CSS d'Adobe Vanilla Framework, framework CSS de Canonical Quasar Framework Vaadin GroundworkCSS Kube

W3.CSS

W3.CSS, est un framework concurrent de Bootstrap (framework). Plus récent et plus simple, il est inspiré du Material Design de Google . W3.CSS est développé

Ionic (framework)

permet de créer un code multisupport en utilisant des outils Web comme HTML, CSS, JavaScript, afin de générer des applications iOS, Android, Chrome, Windows