0Pricing
CSS Academy · Leçon

Mettre en œuvre des thèmes multimarques avec des variables CSS

Basculez entre plusieurs thèmes de marque lors de l’exécution en remplaçant les valeurs des propriétés personnalisées CSS.

Mettre en œuvre des thèmes multimarques avec des variables CSS est une leçon CSS Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage CSS Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours CSS Academy comprend 4 leçons au total.

Vue d’ensemble de l’architecture des thèmes

La thématisation multi-marque associe un même ensemble de jetons alias de composants à différentes valeurs de jetons globaux pour chaque marque. Les composants font référence aux jetons alias ; les fichiers de thème de chaque marque réaffectent les alias aux jetons globaux propres à la marque.

Couche des jetons de base

Définissez les jetons globaux dans :root : toutes les valeurs brutes de couleur, d’espacement et de typographie. Il s’agit de la marque par défaut. Les composants ne font jamais référence directement aux jetons globaux : ils passent toujours par des alias.

  <span class="swatch swatch-primary"></span>
  <span class="swatch swatch-secondary"></span>

Couche des jetons alias

Les jetons alias font référence aux jetons globaux à l’aide de var() : --color-action: var(--color-brand-primary). Les composants utilisent --color-action. Modifier la signification de --color-brand-primary modifie l’ensemble du système.

Classes de thème de marque

Appliquez les thèmes de marque à l’aide d’une classe sur html ou sur un élément conteneur. Chaque classe de thème remplace les jetons globaux dans la portée de cette marque. Les composants contenus dans le conteneur héritent automatiquement des valeurs de la marque.

  <span class="swatch"></span>
  <span class="theme-brand-a swatch"></span>
  <span class="theme-brand-b swatch"></span>

Le mode sombre comme thème

Le mode sombre est une variante de thème : une classe ou une requête média qui remplace les jetons de couleur. Utilisez prefers-color-scheme pour le réglage par défaut de l’OS et une classe .dark pour permettre à l’utilisateur de le remplacer. Les deux modifient les mêmes jetons alias.

  <div class="surface">Themed surface</div>

Héritage des jetons

Les propriétés personnalisées CSS se propagent en cascade et sont héritées. Un thème appliqué à un élément conteneur affecte tous ses descendants. Les thèmes imbriqués remplacent les thèmes extérieurs au niveau du conteneur, ce qui est utile pour thématiser un widget intégré à une page.

Éviter les fuites de jetons

Assurez-vous que les jetons alias sont toujours définis. Si une classe de thème est absente, l’alias doit revenir correctement à une valeur par défaut. Utilisez la syntaxe de valeur de secours de CSS var() : var(--color-action, #3b82f6) afin d’éviter les textes invisibles ou les arrière-plans manquants.

Génération des fichiers de thème

Style Dictionary peut produire des fichiers CSS de thème distincts à partir d’un fichier JSON de jetons. L’étape de compilation génère theme-brand-a.css et theme-brand-b.css. Chargez le fichier approprié à l’exécution ou compilez-le dans des paquets distincts pour chaque marque.

Tester les thèmes

Écrivez des tests de régression visuelle qui effectuent le rendu de chaque composant dans chaque thème. Percy et Chromatic capturent des captures d’écran pour chaque variante de thème. Les tests visuels automatisés détectent les régressions lorsque les valeurs des jetons globaux changent de manière inattendue.

Changement de thème à l’exécution

Basculez les classes de thème avec JavaScript : document.documentElement.classList.replace("theme-a", "theme-b"). Les variables CSS se mettent à jour instantanément sans effectuer de nouveau rendu des composants : aucun nouveau rendu de React ni recalcul des styles des valeurs statiques n’est nécessaire.

Considérations relatives aux performances

Les variables CSS sont résolues au moment de la peinture : modifier une variable racine déclenche une nouvelle peinture de tous les éléments qui l’utilisent. Limitez les modifications des variables globales aux interactions de l’utilisateur, comme le changement de thème, plutôt qu’aux boucles d’animation. Utilisez des transitions de propriétés individuelles pour les effets de thématisation animés.

Vérification des connaissances

Comment les thèmes fondés sur les propriétés personnalisées CSS permettent-ils de changer de marque sans modifier le CSS des composants ?

Résumé

La thématisation multi-marque sépare les valeurs brutes globales des jetons et les jetons alias sémantiques. Les classes de thème remplacent les jetons globaux dans la portée d’un conteneur. Les composants qui font référence aux alias reflètent automatiquement le thème de marque actif, ce qui permet de changer de marque à l’exécution sans modifier le code des composants.

Questions Fréquemment Posées

La leçon « Mettre en œuvre des thèmes multimarques avec des variables CSS » est-elle gratuite ?

Oui — le texte complet de « Mettre en œuvre des thèmes multimarques avec des variables CSS » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours CSS Academy, passe à CoddyKit PRO. Le cours CSS Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Mettre en œuvre des thèmes multimarques avec des variables CSS » ?

Basculez entre plusieurs thèmes de marque lors de l’exécution en remplaçant les valeurs des propriétés personnalisées CSS. Tu pratiques CSS Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer CSS Academy ?

Aucune expérience préalable n'est requise. CSS Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Mettre en œuvre des thèmes multimarques avec des variables CSS » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon CSS Academy ?

Oui. Chaque leçon CSS Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Que sont les jetons de conception
  2. Conventions de nommage des jetons
  3. Mettre en œuvre des thèmes multimarques avec des variables CSS
  4. Outils pour jetons : Style Dictionary
← Retour à CSS Academy