Implementazione di temi multi-brand con variabili CSS
Passi da un tema all’altro di più brand durante l’esecuzione, sostituendo i valori delle proprietà personalizzate CSS.
Implementazione di temi multi-brand con variabili CSS è una lezione CSS Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento CSS Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso CSS Academy include 4 lezioni in totale.
Panoramica dell'architettura dei temi
La tematizzazione multi-brand associa un unico insieme di token alias dei componenti a valori diversi dei token globali per ogni brand. I componenti fanno riferimento ai token alias; i file del tema di ciascun brand rimappano gli alias sui token globali specifici del brand.
Livello dei token di base
Definisca i token globali in :root: tutti i valori grezzi dei colori, della spaziatura e della tipografia. Questo è il brand predefinito. I componenti non fanno mai riferimento direttamente ai token globali, ma sempre tramite gli alias.
<span class="swatch swatch-primary"></span>
<span class="swatch swatch-secondary"></span>Livello dei token alias
I token alias fanno riferimento ai token globali usando var(): --color-action: var(--color-brand-primary). I componenti usano --color-action. Cambiando il significato di --color-brand-primary si modifica l'intero sistema.
Classi dei temi del brand
Applichi i temi del brand con una classe su html o su un elemento contenitore. Ogni classe del tema sovrascrive i token globali nell'ambito di quel brand. I componenti all'interno del contenitore ereditano automaticamente i valori del brand.
<span class="swatch"></span>
<span class="theme-brand-a swatch"></span>
<span class="theme-brand-b swatch"></span>Modalità scura come tema
La modalità scura è una variante del tema: una classe o una media query che sovrascrive i token dei colori. Utilizzi prefers-color-scheme per il valore predefinito del sistema operativo e una classe .dark per la scelta dell'utente. Entrambi modificano gli stessi token alias.
<div class="surface">Themed surface</div>Ereditarietà dei token
Le proprietà personalizzate CSS seguono la cascata e vengono ereditate. Un tema applicato a un elemento contenitore influisce su tutti i suoi discendenti. I temi annidati sovrascrivono i temi esterni a livello del contenitore, una soluzione utile per tematizzare widget incorporati nelle pagine.
Evitare la dispersione dei token
Si assicuri che i token alias siano sempre definiti. Se manca una classe del tema, l'alias dovrebbe ricorrere in modo appropriato a un valore predefinito. Utilizzi la sintassi di fallback di CSS var(): var(--color-action, #3b82f6) per evitare testo invisibile o sfondi mancanti.
Generazione dei file dei temi
Style Dictionary può produrre file CSS separati per i temi a partire da un JSON di token. La fase di build genera theme-brand-a.css e theme-brand-b.css. Carichi il file appropriato a runtime oppure lo compili in bundle separati per ogni brand.
Test dei temi
Scriva test di regressione visiva che eseguano il rendering di ogni componente in ogni tema. Percy e Chromatic acquisiscono screenshot per ogni variante del tema. I test visivi automatizzati rilevano le regressioni quando i valori dei token globali cambiano inaspettatamente.
Cambio del tema a runtime
Alterni le classi del tema con JavaScript: document.documentElement.classList.replace("theme-a", "theme-b"). Le variabili CSS si aggiornano istantaneamente senza eseguire nuovamente il rendering dei componenti: non servono né un nuovo rendering di React né il ricalcolo degli stili per valori statici.
Considerazioni sulle prestazioni
Le variabili CSS vengono risolte al momento del paint: modificare una variabile radice attiva il repaint di tutti gli elementi che la utilizzano. Limiti le modifiche alle variabili globali alle interazioni dell'utente, come il cambio del tema, anziché usarle nei cicli di animazione. Utilizzi transizioni sulle singole proprietà per gli effetti di tematizzazione animati.
Verifica delle conoscenze
In che modo i temi basati sulle proprietà personalizzate CSS consentono di cambiare brand senza modificare il CSS dei componenti?
Riepilogo
La tematizzazione multi-brand separa i valori globali grezzi dei token dai token alias semantici. Le classi dei temi sovrascrivono i token globali nell'ambito di un contenitore. I componenti che fanno riferimento agli alias riflettono automaticamente il tema del brand attivo, consentendo il cambio a runtime senza modificare il codice dei componenti.
Impara CSS con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 40
- Lezioni
- 159
Domande Frequenti
La lezione «Implementazione di temi multi-brand con variabili CSS» è gratuita?
Sì — il testo completo di «Implementazione di temi multi-brand con variabili CSS» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso CSS Academy, passa a CoddyKit PRO. Il corso CSS Academy include 4 lezioni in totale.
Cosa imparerò in «Implementazione di temi multi-brand con variabili CSS»?
Passi da un tema all’altro di più brand durante l’esecuzione, sostituendo i valori delle proprietà personalizzate CSS. Eserciti CSS Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare CSS Academy?
Non è richiesta alcuna esperienza precedente. CSS Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.
Quanto tempo richiede la lezione «Implementazione di temi multi-brand con variabili CSS»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione CSS Academy?
Sì. Ogni lezione CSS Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Cosa sono i design token
- Convenzioni per la denominazione dei token
- Implementazione di temi multi-brand con variabili CSS
- Strumenti per i token: Style Dictionary