--- title: ':not' slug: 'Web/CSS/:not' tags: - CSS - Pseudo-classe - Reference translation_of: 'Web/CSS/:not' ---
{{CSSRef}}

La pseudo-classe de négation, :not(), est une notation fonctionnelle qui prend un sélecteur comme argument. Elle permet de cibler les éléments qui ne sont pas représentés par cet argument. Le sélecteur passé en argument ne doit pas contenir d'autre sélecteur de négation et ne doit pas cibler de pseudo-élément.

/* Sélectionne n'importe quel élément qui n'est */
/* pas un paragraphe */
:not(p) {
  color: blue;
}

La spécificité de la pseudo-classe :not est la spécificité de son argument. La pseudo-classe de négation n'ajoute pas de spécificité, contrairement aux autres pseudo-classes.

Notes :

Syntaxe

La pseudo-classe :not() prend en argument une liste d'un ou plusieurs sélecteurs séparés par des virgules. Cette liste ne doit pas contenir d'autre sélecteur de négation ou de pseudo-élément.

Attention, la possibilité d'avoir plusieurs sélecteurs est expérimentale et n'est pas encore largement prise en charge.

{{csssyntax}}

Exemples

CSS

/* Contient tous les paragraphes (p) sauf
   ceux avec le sélecteur de class "classy" */
p:not(.classy) {
  color: red;
}

/* Les balises p sont exclues */
/* Attention, il est nécessaire d'avoir un      */
/* combinateur. On ne peut pas écrire ':not(p)' */
*:not(p) {
  color: green;
}

/* Les éléments qui ne sont pas des paragraphes */
/* et qui n'ont pas la classe "classy" */
/* Note : cette syntaxe n'est pas bien supportée */
body :not(.classy, p) {
  font-family: sans-serif;
}

HTML

<p>
  Un peu de texte.
</p>
<p class="classy">
  Encore du texte.
</p>
<span>
  Et toujours du texte.
<span>

Résultat

{{EmbedLiveSample('Exemples')}}

Spécifications

Spécification État Commentaires
{{SpecName('CSS4 Selectors', '#negation', ':not()')}} {{Spec2('CSS4 Selectors')}} La définition de l'argument est étendue afin d'autoriser les sélecteurs complexes.
{{SpecName('CSS3 Selectors', '#negation', ':not()')}} {{Spec2('CSS3 Selectors')}} Définition initiale.

Compatibilité des navigateurs

{{Compat("css.selectors.not")}}