Heim > Web-Frontend > CSS-Tutorial > Wie kann ich CSS-Farbtöne wie die Funktion „darken()' von Sass nur mit CSS-Variablen erstellen?

Wie kann ich CSS-Farbtöne wie die Funktion „darken()' von Sass nur mit CSS-Variablen erstellen?

Mary-Kate Olsen
Freigeben: 2024-12-13 03:31:09
Original
344 Leute haben es durchsucht

How Can I Create CSS Color Shades Like Sass's `darken()` Function Using Only CSS Variables?

Erstellen von Farbtönen mit CSS-Variablen: Simulation der Darken()-Funktion von Sass

Problemstellung:

Erstellen dynamischer Farbtöne für Schwebe-, Fokus- und Aktivzustände unter Verwendung von CSS-Variablen auf ähnliche Weise wie Sass‘ Darken() Funktion.

Lösung:

Die CSS Color Module Level 4-Spezifikation führt eine „relative Farbsyntax“ ein, die die Manipulation von Farben mithilfe arithmetischer Operationen ermöglicht. Dies ermöglicht die Erstellung von Farbtönen wie folgt:

:root {
  --color-primary: #f00; /* any format you want here */
  --color-primary-darker: hsl(from var(--color-primary) h s calc(l - 5));
  --color-primary-darkest: hsl(from var(--color-primary) h s calc(l - 10));
}

.button {
  background: var(--color-primary);
}

.button:hover,
.button:focus {
  background: var(--color-primary-darker);
}

.button:active {
  background: var(--color-primary-darkest);
}
Nach dem Login kopieren

In diesem Code:

  • var(--color-primary) ist die Originalfarbe.
  • --color-primary-darker ist 5 % dunkler als --color-primary.
  • --color-primary-darkest ist 10 % dunkler als --color-primary.

Durch Anpassen der Prozentsätze im calc()-Ausdruck können Sie verschiedene Schattierungen der Grundfarbe erzeugen. Dieser Ansatz bietet eine ähnliche Funktionalität wie die Funktion „darken()“ von Sass, verwendet jedoch eine reine CSS-Syntax.

Das obige ist der detaillierte Inhalt vonWie kann ich CSS-Farbtöne wie die Funktion „darken()' von Sass nur mit CSS-Variablen erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage