a11y.skipToMainContent
1

Calculatrice de spécificité CSS

Coller les sélecteurs CSS pour voir leurs scores de spécificité, les comparer en tête à tête et comprendre lequel gagne.

Was this tool helpful?
Send output to:
Advertisement

How to use CSS Specificity Calculator

  1. Coller un ou plusieurs sélecteurs CSS dans la boîte d'entrée (un par ligne).
  2. La spécificité de chaque sélecteur est représentée par un triple (a,b,c) avec une ventilation des ID, des classes et des éléments.
  3. Lorsque vous entrez plusieurs sélecteurs, le gagnant est surligné en vert avec un badge 'WINS'.
  4. Utilisez le diagramme à barres pour comparer visuellement la spécificité de tous les sélecteurs.
  5. Modifier n'importe quel sélecteur et regarder la mise à jour des résultats en temps réel.

Quel est {nom} ?

La spécificité du CSS détermine quels styles s'appliquent lorsque plusieurs règles ciblent le même élément. Il est calculé comme une valeur à trois composantes (a, b, c) où 'a' compte les ID, 'b' compte les classes/attributs/pseudo-classes et 'c' compte les éléments/pseudo-éléments. Les valeurs les plus élevées gagnent, le « a » étant le plus significatif.

Cet outil analyse vos sélecteurs et décompose instantanément leur spécificité. Coller plusieurs sélecteurs (un par ligne) et l'outil met en évidence le gagnant. Il gère correctement les pseudo-classes CSS modernes comme :is(), :not(), :has() et :where() selon la spécification CSS Selectors Level 4.

Advertisement

FAQ

Que signifient les chiffres a, b, c?
Les trois nombres représentent : a = nombre de sélecteurs d'ID (#id), b = nombre de classes (.class), attributs ([attr]), et pseudo-classes (:hover), c = nombre de noms d'éléments (div, p) et pseudo-éléments (::avant). Un style inline bat tout ; !important bat tout sauf un autre !important.
Comment fonctionne :is() et :not() spécificité?
Par les sélecteurs CSS Niveau 4 spec, :is() et :not() prennent la spécificité de leur argument le plus spécifique. Par exemple, :is(#id, .class) a la spécificité (1,0,0) — la plus élevée parmi ses arguments. :has() fonctionne de la même façon. :where() contribue toujours (0,0,0) indépendamment de ses arguments.
Et l'important ?
Les déclarations importantes l'emportent sur les déclarations normales, indépendamment de leur spécificité. Lorsque deux déclarations importantes sont en conflit, la spécificité est utilisée pour briser l'égalité. Cet outil calcule uniquement la spécificité du sélecteur de base — il ne tient pas compte de !important.

Related tools

Author

MW
Marcus Webb"The DevTool Craftsman"

Full-Stack Developer & Tools Architect

Marcus has been writing code since the dial-up era. He has contributed to open-source developer tools, built CI/CD pipelines for startups, and debugged production incidents at 3 AM more times than he would like to admit. His philosophy is that the best developer tool is the one that gets out of your way, and he writes about practical tooling that helps teams ship faster with fewer headaches.

← Back to Developer Tools · All tags

Last updated:

Advertisement