Inhaltsverzeichnis
1. Deklaration von Variablen
2. var()-Funktion
3. Typ des Variablenwerts
4. Geltungsbereich
5. Responsives Layout
6. Kompatibilitätsverarbeitung
7. JavaScript-Betrieb
Heim Web-Frontend CSS-Tutorial Einführung in die Verwendung von Variablen in CSS (mit Beispielen)

Einführung in die Verwendung von Variablen in CSS (mit Beispielen)

Nov 24, 2018 pm 02:52 PM
css

Dieser Artikel bietet Ihnen eine Einführung in die Verwendung von Variablen in CSS (mit Beispielen). Ich hoffe, dass er Ihnen als Referenz dienen wird. hat geholfen.

Ich habe vor zwei Tagen Ruan Dashens Artikel über die Verwendung von Variablen in CSS gesehen und ihn geklärt.

Diese wichtige neue CSS-Funktion wird bereits von allen gängigen Browsern unterstützt. Dieser Artikel bietet eine umfassende Einführung in die Verwendung und Sie werden feststellen, dass natives CSS äußerst leistungsfähig ist.

1. Deklaration von Variablen

Bei der Deklaration einer Variablen sollten vor dem Variablennamen zwei Bindestriche (--) eingefügt werden.

body {
  --foo: #7F583F;
  --bar: #F7EFD2;
}
Nach dem Login kopieren

Im obigen Code werden zwei Variablen im Body-Selektor deklariert: --foo und --bar.

Sie unterscheiden sich nicht von formalen Eigenschaften wie Farbe und Schriftgröße, haben aber keine Standardbedeutung. Daher werden CSS-Variablen auch „CSS-benutzerdefinierte Eigenschaften“ genannt. Denn Variablen und benutzerdefinierte CSS-Eigenschaften sind eigentlich dasselbe.

Sie fragen sich vielleicht, warum zwei Konjunktionslinien (--) zur Darstellung von Variablen ausgewählt werden? Weil $foo von Sass und @foo von Less verwendet wird. Um Konflikte zu vermeiden, verwenden die offiziellen CSS-Variablen stattdessen zwei Konjunktionslinien.

In CSS-Variablen können verschiedene Werte eingegeben werden.

:root{
  --main-color: #4d4e53;
  --main-bg: rgb(255, 255, 255);
  --logo-border-color: rebeccapurple;

  --header-height: 68px;
  --content-padding: 10px 20px;

  --base-line-height: 1.428571429;
  --transition-duration: .35s;
  --external-link: "external link";
  --margin-top: calc(2vh + 20px);
}
Nach dem Login kopieren

Variablennamen unterscheiden zwischen Groß- und Kleinschreibung, --header-color und --Header-Color sind zwei verschiedene Variablen.

2. var()-Funktion

var()-Funktion wird zum Lesen von Variablen verwendet. Die Funktion

a {
  color: var(--foo);
  text-decoration-color: var(--bar);
}
Nach dem Login kopieren

var() kann auch einen zweiten Parameter verwenden, um den Standardwert der Variablen darzustellen. Wenn die Variable nicht existiert, wird dieser Standardwert verwendet.

color: var(--foo, #7F583F);
Nach dem Login kopieren

Der zweite Parameter verarbeitet keine internen Kommas oder Leerzeichen und sie werden als Teil des Parameters betrachtet. Die Funktion

var(--font-stack, "Roboto", "Helvetica");
var(--pad, 10px 15px 20px);
Nach dem Login kopieren

var() kann auch bei der Deklaration von Variablen verwendet werden.

:root {
  --primary-color: red;
  --logo-text: var(--primary-color);
}
Nach dem Login kopieren

Beachten Sie, dass Variablenwerte nur als Attributwerte und nicht als Attributnamen verwendet werden können.

.foo {
  --side: margin-top;
  /* 无效 */
  var(--side): 20px;
}
Nach dem Login kopieren

Im obigen Code wird die Variable --side als Attributname verwendet, was ungültig ist.

3. Typ des Variablenwerts

Wenn der Variablenwert eine Zeichenfolge ist, kann er mit anderen Zeichenfolgen verkettet werden.

--bar: 'hello';
--foo: var(--bar)' world';
Nach dem Login kopieren

Damit können Sie debuggen (Beispiel).

body:after {
  content: '--screen-category : 'var(--screen-category);
}
Nach dem Login kopieren

Wenn der Variablenwert ein numerischer Wert ist, kann er nicht direkt mit der numerischen Einheit verwendet werden.

.foo {
  --gap: 20;
  /* 无效 */
  margin-top: var(--gap)px;
}
Nach dem Login kopieren

Im obigen Code werden Wert und Einheit direkt zusammen geschrieben, was ungültig ist. Sie müssen die Funktion calc() verwenden, um sie zu verbinden.

.foo {
  --gap: 20;
  margin-top: calc(var(--gap) * 1px);
}
Nach dem Login kopieren

Wenn der Variablenwert eine Einheit hat, kann er nicht als String geschrieben werden.

/* 无效 */
.foo {
  --foo: '20px';
  font-size: var(--foo);
}

/* 有效 */
.foo {
  --foo: 20px;
  font-size: var(--foo);
}
Nach dem Login kopieren

4. Geltungsbereich

Die gleiche CSS-Variable kann in mehreren Selektoren deklariert werden. Beim Lesen wird die Anweisung mit der höchsten Priorität wirksam. Dies steht im Einklang mit der CSS-„Kaskaden“-Regel.

Hier ist ein Beispiel.

<style>
  :root { --color: blue; }
  p { --color: green; }
  #alert { --color: red; }
  * { color: var(--color); }</style><p>蓝色</p><p>绿色</p><p id="alert">红色</p>
Nach dem Login kopieren

Im obigen Code deklarieren alle drei Selektoren die Variable --color. Wenn verschiedene Elemente diese Variable lesen, wird die Regel mit der höchsten Priorität verwendet, sodass die Farben der drei Textabsätze unterschiedlich sind.

Das heißt, der Gültigkeitsbereich einer Variablen ist der gültige Gültigkeitsbereich des Selektors, in dem sie sich befindet.

body {
  --foo: #7F583F;
}

.content {
  --bar: #F7EFD2;
}
Nach dem Login kopieren

Im obigen Code ist der Bereich der Variablen --foo der effektive Bereich des Body-Selektors und der Bereich von --bar der effektive Bereich des .content-Selektors.

Aus diesem Grund werden globale Variablen normalerweise innerhalb des Wurzelelements:root platziert, um sicherzustellen, dass jeder Selektor sie lesen kann.

:root {
  --main-color: #06c;
}
Nach dem Login kopieren

5. Responsives Layout

CSS ist dynamisch und alle Änderungen an der Seite führen zu Änderungen in den übernommenen Regeln.

Mit dieser Funktion können Sie Variablen im Medienbefehl des responsiven Layouts deklarieren, sodass unterschiedliche Bildschirmbreiten unterschiedliche Variablenwerte haben.

body {
  --primary: #7F583F;
  --secondary: #F7EFD2;
}

a {
  color: var(--primary);
  text-decoration-color: var(--secondary);
}

@media screen and (min-width: 768px) {
  body {
    --primary:  #F7EFD2;
    --secondary: #7F583F;
  }
}
Nach dem Login kopieren

6. Kompatibilitätsverarbeitung

Für Browser, die keine CSS-Variablen unterstützen, können Sie die folgende Schreibmethode verwenden.

a {
  color: #7F583F;
  color: var(--primary);
}
Nach dem Login kopieren

kann auch mit dem Befehl @support erkannt werden.

@supports ( (--a: 0)) {
  /* supported */
}
@supports ( not (--a: 0)) {
  /* not supported */
}
Nach dem Login kopieren

7. JavaScript-Betrieb

JavaScript kann auch erkennen, ob der Browser CSS-Variablen unterstützt.

const isSupported =
  window.CSS &&
  window.CSS.supports &&
  window.CSS.supports(&#39;--a&#39;, 0);

if (isSupported) {
  /* supported */
} else {
  /* not supported */
}
Nach dem Login kopieren

Die Art und Weise, JavaScript zu schreiben, um CSS-Variablen zu bedienen, ist wie folgt.

// 设置变量
document.body.style.setProperty(&#39;--primary&#39;, &#39;#7F583F&#39;);

// 读取变量
document.body.style.getPropertyValue(&#39;--primary&#39;).trim();
// &#39;#7F583F&#39;

// 删除变量
document.body.style.removeProperty(&#39;--primary&#39;);
Nach dem Login kopieren

Das bedeutet, dass JavaScript beliebige Werte in Stylesheets speichern kann. Das Folgende ist ein Beispiel für das Abhören eines Ereignisses. Die Ereignisinformationen werden in einer CSS-Variablen gespeichert.

const docStyle = document.documentElement.style;

document.addEventListener(&#39;mousemove&#39;, (e) => {
  docStyle.setProperty(&#39;--mouse-x&#39;, e.clientX);
  docStyle.setProperty(&#39;--mouse-y&#39;, e.clientY);
});
Nach dem Login kopieren

Informationen, die für CSS nicht nützlich sind, können auch in CSS-Variablen abgelegt werden.

--foo: if(x > 5) this.width = 10;
Nach dem Login kopieren

Im obigen Code ist der Wert von --foo eine ungültige Anweisung in CSS, kann aber von JavaScript gelesen werden. Das bedeutet, dass Sie Stileinstellungen in CSS-Variablen schreiben und diese von JavaScript lesen lassen können.

CSS-Variablen bieten also eine Möglichkeit für JavaScript, mit CSS zu kommunizieren.

Das obige ist der detaillierte Inhalt vonEinführung in die Verwendung von Variablen in CSS (mit Beispielen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was bedeutet Platzhalter in Vue? Was bedeutet Platzhalter in Vue? May 07, 2024 am 09:57 AM

In Vue.js gibt das Platzhalterattribut den Platzhaltertext des Eingabeelements an, der angezeigt wird, wenn der Benutzer keinen Inhalt eingegeben hat, Eingabetipps oder Beispiele bereitstellt und die Barrierefreiheit des Formulars verbessert. Seine Verwendung besteht darin, das Platzhalterattribut für das Eingabeelement festzulegen und das Erscheinungsbild mithilfe von CSS anzupassen. Zu den Best Practices gehört es, relevant für die Eingabe zu sein, kurz und klar zu sein, Standardtexte zu vermeiden und die Barrierefreiheit zu berücksichtigen.

Was bedeutet span in js Was bedeutet span in js May 06, 2024 am 11:42 AM

Das Span-Tag kann Stile, Attribute oder Verhaltensweisen zum Text hinzufügen. Es wird verwendet, um Stile wie Farbe und Schriftgröße hinzuzufügen. Legen Sie Attribute wie ID, Klasse usw. fest. Zugehörige Verhaltensweisen wie Klicks, Hovers usw. Markieren Sie Text zur weiteren Bearbeitung oder zum Zitieren.

Was bedeutet rem in js Was bedeutet rem in js May 06, 2024 am 11:30 AM

REM in CSS ist eine relative Einheit relativ zur Schriftgröße des Stammelements (HTML). Es weist die folgenden Merkmale auf: relativ zur Schriftgröße des Stammelements, nicht vom übergeordneten Element beeinflusst. Wenn sich die Schriftgröße des Stammelements ändert, werden Elemente, die REM verwenden, entsprechend angepasst. Kann mit jeder CSS-Eigenschaft verwendet werden. Zu den Vorteilen der Verwendung von REM gehören: Reaktionsfähigkeit: Halten Sie den Text auf verschiedenen Geräten und Bildschirmgrößen lesbar. Konsistenz: Stellen Sie sicher, dass die Schriftgrößen auf Ihrer gesamten Website einheitlich sind. Skalierbarkeit: Ändern Sie die globale Schriftgröße ganz einfach, indem Sie die Schriftgröße des Stammelements anpassen.

So führen Sie Bilder in Vue ein So führen Sie Bilder in Vue ein May 02, 2024 pm 10:48 PM

Es gibt fünf Möglichkeiten, Bilder in Vue einzuführen: über URL, Require-Funktion, statische Datei, V-Bind-Direktive und CSS-Hintergrundbild. Dynamische Bilder können in den berechneten Eigenschaften oder Listenern von Vue verarbeitet werden, und gebündelte Tools können zum Optimieren des Bildladens verwendet werden. Stellen Sie sicher, dass der Pfad korrekt ist, da sonst ein Ladefehler auftritt.

Was ist ein Knoten in js? Was ist ein Knoten in js? May 07, 2024 pm 09:06 PM

Knoten sind Entitäten im JavaScript-DOM, die HTML-Elemente darstellen. Sie stellen ein bestimmtes Element auf der Seite dar und können verwendet werden, um auf dieses Element zuzugreifen und es zu bearbeiten. Zu den gängigen Knotentypen gehören Elementknoten, Textknoten, Kommentarknoten und Dokumentknoten. Über DOM-Methoden wie getElementById() können Sie auf Knoten zugreifen und diese bearbeiten, einschließlich der Änderung von Eigenschaften, dem Hinzufügen/Entfernen untergeordneter Knoten, dem Einfügen/Ersetzen von Knoten und dem Klonen von Knoten. Das Durchqueren von Knoten hilft bei der Navigation innerhalb der DOM-Struktur. Knoten sind nützlich für die dynamische Erstellung von Seiteninhalten, die Ereignisbehandlung, Animation und Datenbindung.

In welcher Sprache ist das Browser-Plugin geschrieben? In welcher Sprache ist das Browser-Plugin geschrieben? May 08, 2024 pm 09:36 PM

Browser-Plugins werden normalerweise in den folgenden Sprachen geschrieben: Front-End-Sprachen: JavaScript, HTML, CSS Back-End-Sprachen: C++, Rust, WebAssembly Andere Sprachen: Python, Java

So legen Sie unbekannte Attribute in vscode fest vscode-Methode zum Festlegen unbekannter Attribute So legen Sie unbekannte Attribute in vscode fest vscode-Methode zum Festlegen unbekannter Attribute May 09, 2024 pm 02:43 PM

1. Öffnen Sie zunächst das Einstellungssymbol in der unteren linken Ecke und klicken Sie auf die Option „Einstellungen“. 2. Suchen Sie dann die CSS-Spalte im Sprungfenster. 3. Ändern Sie abschließend die Dropdown-Option im Menü „Unbekannte Eigenschaften“ in die Schaltfläche „Fehler“. .

Was machen Ref und ID in Vue? Was machen Ref und ID in Vue? May 02, 2024 pm 08:42 PM

In Vue.js wird ref in JavaScript verwendet, um auf ein DOM-Element zu verweisen (zugänglich für Unterkomponenten und das DOM-Element selbst), während id zum Festlegen des HTML-ID-Attributs verwendet wird (kann für CSS-Stil, HTML-Markup und JavaScript-Suche verwendet werden). ).

See all articles