CSS Academy · Les

Variabelen afbakenen tot componenten

Baken CSS-variabelen af tot componentelementen om geïsoleerde, herbruikbare stijlsystemen te maken.

Les 3 van 413 stappen

Variabelen afbakenen tot componenten is een gratis CSS Academy-les op CoddyKit. Dit is les 3 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject CSS Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus CSS Academy bevat in totaal 4 lessen.

Waarom aangepaste eigenschappen een bereik geven

Globale aangepaste eigenschappen beïnvloeden de hele pagina. Door aangepaste eigenschappen een bereik binnen een component te geven, houd je stijlen geïsoleerd en voorkom je onbedoelde overerving tussen componenten.

Bereik op componentniveau

Definieer aangepaste eigenschappen op de hoofdselector van de component. Kinderen nemen ze over, maar elementen buiten de component niet.

<div class="card">Scoped card variables</div>

Variabelen met een bereik overschrijven

Een component kan thema-varianten definiëren door zijn eigen aangepaste eigenschappen in modifierklassen te overschrijven:

<div class="card">Default</div>
<div class="card card--dark">Dark</div>
<div class="card card--blue">Blue</div>

Globale terugvalwaarde met lokale overschrijving

Ontwerppatroon: globale waarden in :root, lokale overschrijvingen op de component. De component gebruikt globale tokens, maar kan ze lokaal aanpassen.

<button>Royalblue (global)</button>
<div class="sidebar">
  <button>Coral (sidebar override)</button>
</div>

Lagen van CSS-aangepaste eigenschappen

Een goed gestructureerd ontwerpsysteem heeft meerdere lagen van aangepaste eigenschappen:

  1. Globale tokens: onbewerkte waarden (kleuren, afmetingen)
  2. Semantische tokens: gebaseerd op betekenis (--color-action)
  3. Componenttokens: specifiek voor een component (--button-bg)

API voor inline stijlen

Stel componentvariabelen via inline stijlen vanuit JavaScript of HTML-attributen beschikbaar als openbare API. Zo kunnen gebruikers componenten aanpassen zonder CSS te bewerken.

<div class="card" style="--card-bg: pink;">
  Content
</div>

Bereik afbakenen met @scope (modern)

De nieuwe @scope-at-rule biedt expliciete CSS-bereikafbakening zonder afhankelijk te zijn van naamgeving van klassen:

<div class="card">
  <p class="title">Scoped Title</p>
  <p>Card body</p>
</div>

Isolatie met data-theme

Gebruik een data-theme-attribuut om een volledige deelboom een ander thema te geven:

<div class="panel">Light theme (default)</div>
<div data-theme="dark" class="panel">Dark theme</div>

Lekken voorkomen

Aangepaste eigenschappen gelden voor het element en zijn afstammelingen. Eigenschappen die in een afstammeling zijn gedefinieerd, kunnen echter alleen door die afstammeling en zijn eigen kinderen worden gebruikt — ze lekken niet naar bovenliggende of naastgelegen elementen.

Responsieve variabelen met een bereik

Aangepaste eigenschappen met een bereik werken uitstekend met containerquery's:

<div class="card">
  <div class="card__inner">
    <div>Item 1</div>
    <div>Item 2</div>
  </div>
</div>

Documentatie van componenttokens

Documenteer de API van de aangepaste eigenschappen van een component, zodat ontwikkelaars weten welke variabelen ze kunnen overschrijven. Een goed patroon is om ze als opmerkingen bovenaan het stylesheet van de component te vermelden.

Snelle controle

Een aangepaste eigenschap --color-accent is gedefinieerd op een element .card. Kan een naastgelegen element .nav deze variabele overnemen?

Samenvatting

Geef aangepaste eigenschappen een bereik binnen componentselectors om ze van het globale bereik te isoleren. Gebruik modifierklassen om variabelen met een bereik voor varianten te overschrijven. Ontwerpsystemen stapelen globale tokens → semantische tokens → componenttokens. Stel variabelen beschikbaar als component-API voor externe aanpassing.

Gratis beginnen

Leer CSS met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
40
Lessen
159

Veelgestelde vragen

Is de les “Variabelen afbakenen tot componenten” gratis?

Ja — de volledige tekst van “Variabelen afbakenen tot componenten” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus CSS Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus CSS Academy bevat in totaal 4 lessen.

Wat leer ik in “Variabelen afbakenen tot componenten”?

Baken CSS-variabelen af tot componentelementen om geïsoleerde, herbruikbare stijlsystemen te maken. Je oefent met CSS Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met CSS Academy te beginnen?

Ervaring vooraf is niet nodig. CSS Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 3 van 4.

Hoe lang duurt de les “Variabelen afbakenen tot componenten”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over CSS Academy?

Ja. Elke les over CSS Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Custom properties declareren en gebruiken
  2. Fallbackwaarden en var()
  3. Variabelen afbakenen tot componenten
  4. Variabelen bijwerken met JavaScript
← Terug naar CSS Academy