Maison > interface Web > tutoriel CSS > Pourquoi `.foo a` remplace-t-il `a:hover` et `a:active` dans la spécificité CSS ?

Pourquoi `.foo a` remplace-t-il `a:hover` et `a:active` dans la spécificité CSS ?

Barbara Streisand
Libérer: 2024-11-26 16:27:14
original
296 Les gens l'ont consulté

Why Does `.foo a` Override `a:hover` and `a:active` in CSS Specificity?

Énigme de spécificité : pourquoi .foo un sélecteur remplace a:hover, a:active

La spécificité CSS dicte la manière dont les styles sont appliqués en fonction du sélecteur poids. Dans le problème donné, le sélecteur .foo a est en conflit avec a:hover et a:active.

Comprendre la spécificité

La spécificité est déterminée par le nombre de balises, de classes et des identifiants dans un sélecteur, chaque niveau ayant un poids spécifique. Dans ce cas, le tableau de spécificité fourni montre que .foo a:link et .foo a:visited ont une spécificité plus élevée (0 0 2 1) que a:hover et a:active (0 0 1 1).

Pourquoi .foo a remplace

Le sélecteur .foo a est plus spécifique qu'a:hover et a:active car il s'applique aux liens au sein des éléments avec la classe foo. Lorsqu'un élément rencontre plusieurs sélecteurs avec la même spécificité, le dernier style déclaré est appliqué.

Correction de .foo un sélecteur

Pour autoriser le a:hover et a: que les styles actifs soient prioritaires, le sélecteur .foo a doit être modifié pour avoir une spécificité moindre. Une solution possible est :

.foo a:hover, .foo a:active {
    color: red;
}
Copier après la connexion

En ajoutant .foo avant le survol et les pseudo-classes actives, la spécificité reste supérieure à a:hover et a:active, garantissant que les styles de ces pseudo-classes sont appliqué dans les éléments avec la classe foo.

À emporter

La spécificité détermine la manière dont les styles CSS sont appliqués. Comprendre ce concept est crucial pour contrôler la priorité des styles et obtenir l'effet visuel souhaité.

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