CSS Academy · Lektion

Reservvärden och var()

Ange reservvärden i var() när en anpassad egenskap är odefinierad eller ogiltig.

Lektion 2 av 413 steg

Reservvärden och var() är en gratis lektion i CSS Academy på CoddyKit. Detta är lektion 2 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för CSS Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i CSS Academy innehåller totalt 4 lektioner.

Syntax för reservvärde i var()

Funktionen var() accepterar ett valfritt andra argument som reservvärde, vilket används när den anpassade egenskapen inte är definierad.

<button class="button">Fallback: royalblue</button>

När reservvärden används

Reservvärdet används när:

  • egenskapen inte är definierad i omfånget
  • egenskapen har värdet initial
  • egenskapen deklarerades med ett ogiltigt värde i sitt sammanhang

Flera nivåer av reservvärden

Nästla var()-anrop för att skapa flera nivåer av reservvärden:

<p class="text">Falls through two levels to #3b82f6</p>

Reservvärdet kan vara vilket värde som helst

Reservvärden kan vara vilket giltigt värde som helst för egenskapen – inklusive andra variabler, beräknade värden eller literaler:

<div class="card">16px / 50%</div>

Nyckelordet initial

Om du anger initial för en anpassad egenskap blir resultatet detsamma som om den aldrig hade angetts. Tillsammans med reservvärden gör detta att komponenter kan välja bort en ärvd anpassad egenskap.

<div class="no-theme">
  <button class="button">Falls back to gray</button>
</div>

Garanterat ogiltigt värde

Att använda initial som värde för en anpassad egenskap är en teknik för att garantera att reservvärdet aktiveras. Det kan skapa valfria funktionsflaggor i CSS.

Anpassad egenskap + @property

Regeln @property (Houdini) registrerar en typad anpassad egenskap med ett garanterat initialvärde. Det är robustare än att förlita sig på reservvärden.

<div class="track">
  <div class="bar"></div>
</div>

Reservvärden som är säkra för animering

Säkerställ att övergångar fungerar även när en anpassad egenskap inte har angetts genom att tillhandahålla ett säkert reservvärde som övergången kan utgå från:

<div class="modal">Modal shown via --modal-opacity: 1 (fallback is 0 when unset)</div>

Felsöka saknade variabler

Om en anpassad egenskap saknas och inget reservvärde har angetts beräknas egenskapen till sitt initialvärde (ofta nyckelordet initial). För färger kan detta ge oväntade resultat i form av genomskinlighet eller svart färg. Lägg alltid till reservvärden för kritiska egenskaper.

var() i anpassade egenskaper

Värden för anpassade egenskaper kan själva referera till andra anpassade egenskaper och på så sätt skapa en kedja av tokens:

<div class="swatch swatch-primary"></div>
<div class="swatch swatch-light"></div>

Reservvärden och specificitet

Reservvärden har inget med specificitet att göra – de används endast när den refererade anpassade egenskapen är odefinierad eller ogiltig. Specificiteten avgör vilken regel som anger den anpassade egenskapen, inte vilket reservvärde som används.

Snabbkontroll

Vad gör color: var(--theme-text, #111) när --theme-text inte är definierad?

Sammanfattning

var(--name, fallback) tillhandahåller ett reservvärde när den anpassade egenskapen inte är definierad. Reservvärden kan nästlas för flera nivåer. Använd @property för typade anpassade egenskaper med garanterade initialvärden. Ange alltid reservvärden för kritiska visuella egenskaper.

Gratis att börja

Lär dig CSS med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
40
Lektioner
159

Vanliga frågor

Är lektionen ”Reservvärden och var()” gratis?

Ja – hela texten till ”Reservvärden och var()” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i CSS Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i CSS Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Reservvärden och var()”?

Ange reservvärden i var() när en anpassad egenskap är odefinierad eller ogiltig. Ni övar på CSS Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig CSS Academy?

Du behöver inga förkunskaper. Utbildningen i CSS Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.

Hur lång tid tar lektionen ”Reservvärden och var()”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här CSS Academy-lektionen?

Ja. Varje CSS Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Deklarera och använda anpassade egenskaper
  2. Reservvärden och var()
  3. Avgränsa variabler till komponenter
  4. Uppdatera variabler med JavaScript
← Tillbaka till CSS Academy