CSS

⌘K
  1. Home
  2. Docs
  3. CSS
  4. CSS Variables
  5. CSS var() Function

CSS var() Function

CSS var() Function: Die var()-Funktion in CSS wird verwendet, um benutzerdefinierte CSS-Variablen in Ihrem Stylesheet abzurufen. Diese Funktion vereinfacht das Wiederverwenden von Werten und erleichtert das Anpassen und Warten großer Stylesheets erheblich.

Grundkonzepte

Syntax der var()-Funktion

Die Syntax für die var()-Funktion ist einfach und flexibel. Sie besteht aus dem Funktionsaufruf var(), gefolgt vom Namen der Variablen und optional einem Fallback-Wert.

property: var(--variable-name, fallback-value);
  • --variable-name: Der Name der benutzerdefinierten Variable.
  • fallback-value (optional): Ein alternativer Wert, falls die Variable nicht definiert ist.

Beispiel:

:root {
    --main-bg-color: #3498db;
}

body {
    background-color: var(--main-bg-color, #333);
}

Hier wird die Variable --main-bg-color als Hintergrundfarbe verwendet, und wenn die Variable nicht verfügbar ist, greift die Funktion auf den Fallback-Wert #333 zurück.

Vorteile der var()-Funktion

  • Einheitlichkeit: Die Funktion sorgt dafür, dass Werte wie Farben und Abstände im gesamten Stylesheet einheitlich bleiben.
  • Flexibilität: Durch die zentrale Definition von Werten können Änderungen an einem Ort vorgenommen und automatisch überall angewendet werden.
  • Dynamische Anpassung: var()-Werte können durch JavaScript verändert werden, was dynamische UI-Anpassungen ermöglicht.

Fortgeschrittene Konzepte

Verschachtelte var()-Funktion

Die var()-Funktion kann auch verschachtelt verwendet werden, sodass eine Variable innerhalb einer anderen Variable definiert wird. Dies kann nützlich sein, um gestaffelte Fallback-Werte oder themenbasierte Variablen zu erstellen.

Beispiel einer verschachtelten var()-Funktion:

:root {
    --primary-color: #3498db;
    --secondary-color: var(--primary-color);
}

.header {
    background-color: var(--secondary-color);
}

In diesem Beispiel wird --secondary-color auf den Wert von --primary-color gesetzt. Jede Änderung an --primary-color wirkt sich daher auch auf --secondary-color aus.

var() mit CSS-Funktionen kombinieren

Die var()-Funktion kann auch mit anderen CSS-Funktionen wie calc() kombiniert werden, um dynamische Berechnungen durchzuführen.

Beispiel mit calc() und var():

:root {
    --spacing: 10px;
}

.container {
    padding: calc(var(--spacing) * 2);
}

In diesem Beispiel wird der Padding-Wert dynamisch auf das Doppelte des Wertes der --spacing-Variablen gesetzt.

Anwendungsbereich einschränken

CSS-Variablen können auf bestimmte Elemente oder Selektoren beschränkt werden, indem sie außerhalb des :root-Selektors definiert werden. Dadurch können Sie bestimmte Variablen für bestimmte Teile Ihrer Webseite verwenden.

Beispiel für elementbasierte Variablen:

.section {
    --section-color: #f39c12;
    color: var(--section-color);
}

Hier ist --section-color nur für .section verfügbar und hat keine Auswirkungen auf andere Teile des Stylesheets.

Best Practices

  • Fallback-Werte verwenden: Da einige Browser CSS-Variablen nicht unterstützen, sollten Sie Fallback-Werte hinzufügen, um sicherzustellen, dass das Styling überall funktioniert.
  • Globale Definition im :root-Selektor: Definieren Sie die meisten Variablen im :root, um sie global verfügbar zu machen.
  • Konsistente Benennung: Verwenden Sie klare und einheitliche Namen für Variablen, um Verwirrung zu vermeiden.

Häufig gestellte Fragen

Können var()-Funktionen in allen Browsern verwendet werden?

Moderne Browser unterstützen var()-Funktionen, aber ältere Versionen möglicherweise nicht. Die Verwendung von Fallback-Werten kann helfen, diese Lücke zu schließen.

Kann ich var()-Funktionen mit JavaScript ändern=

Ja, CSS-Variablen lassen sich über JavaScript dynamisch anpassen, indem sie die setProperty-Methode aufrufen.

Ist es möglich, var() in Medienabfragen zu verwenden?

Ja, var()-Funktionen können in Medienabfragen verwendet werden, was sie für responsive Designs besonders wertvoll macht.

Zusammenfassung

Die CSS var()-Funktion bietet eine flexible und effiziente Möglichkeit, wiederverwendbare Werte im Stylesheet zu definieren und anzuwenden. Mit der Möglichkeit, Fallback-Werte zu definieren und Variablen dynamisch mit JavaScript anzupassen, stellt die var()-Funktion eine wesentliche Verbesserung für die Verwaltung von CSS-Code dar.

Übungsaufgaben

  1. Definieren Sie globale Farben und Abstände mit der var()-Funktion und wenden Sie diese in einem Weblayout an.
  2. Erstellen Sie ein variables, responsives Layout, das mit var()– und calc()-Funktionen arbeitet.

Handlungsempfehlungen

Verwenden Sie die var()-Funktion, um wiederkehrende Werte zentral zu verwalten und Anpassungen im gesamten Stylesheet zu vereinfachen. Insbesondere bei größeren Projekten erleichtert die Funktion die Wartbarkeit und Konsistenz und hilft, einheitliche Designs umzusetzen.