Maison > interface Web > tutoriel CSS > Comment puis-je créer des nuances de couleurs CSS comme la fonction « darken() » de Sass en utilisant uniquement des variables CSS ?

Comment puis-je créer des nuances de couleurs CSS comme la fonction « darken() » de Sass en utilisant uniquement des variables CSS ?

Mary-Kate Olsen
Libérer: 2024-12-13 03:31:09
original
352 Les gens l'ont consulté

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

Création de nuances de couleurs avec des variables CSS : simulation de la fonction Darken() de Sass

Énoncé du problème :

Création de nuances de couleurs dynamiques pour le survol, le focus et les états actifs en utilisant des variables CSS d'une manière similaire à darken() de Sass function.

Solution :

La spécification CSS Color Module niveau 4 introduit la « syntaxe relative des couleurs », qui permet la manipulation des couleurs à l'aide d'opérations arithmétiques. Cela permet de créer des nuances de couleurs comme suit :

: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);
}
Copier après la connexion

Dans ce code :

  • var(--color-primary) est la couleur d'origine.
  • --color-primary-darker est 5 % plus foncé que --color-primary.
  • --color-primary-darkest est 10 % plus foncé que --color-primary.

En ajustant les pourcentages dans l'expression calc(), vous pouvez générer différentes nuances de la couleur de base. Cette approche fournit des fonctionnalités similaires à la fonction darken() de Sass, mais en utilisant une syntaxe purement CSS.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal