--- title: ':not()' slug: Web/CSS/:not tags: - CSS - Diseño - Referencia - Web - pseudoclase translation_of: Web/CSS/:not original_slug: Web/CSS/:not() ---
{{CSSRef}}

La pseudoclase :not() de CSS representa elementos que no coinciden con una lista de selectores. Como evita que se seleccionen elementos específicos, se lo conoce como la pseudoclase de negación.

/* Selecciona cualquier elemento que NO sea un párrafo */
:not(p) {
  color: blue;
}

Notas:

Sintaxis

La pseudoclase :not() requiere una lista separada por comas de uno o más selectores como argumento. La lista no debe contener otro selector de negación o un pseudoelemento.

La capacidad de enumerar más de un selector es experimental y aún no es ampliamente compatible.

{{csssyntax}}

Ejemplo

HTML

<p>Soy un párrafo.</p>
<p class="fancy">¡Soy muy elegante!</p>
<div>NO soy un párrafo.</div>

CSS

.fancy {
  text-shadow: 2px 2px 3px gold;
}

/* elementos <p> que no están en la clase `.fancy` */
p:not(.fancy) {
  color: green;
}

/* Elementos que no son elementos <p> */
body :not(p) {
  text-decoration: underline;
}

/* Elementos que no son elementos <div> o <span> */
body :not(div):not(span) {
  font-weight: bold;
}

/* Elementos que no son `.crazy` o `.fancy` */
/* Tenga en cuenta que esta sintaxis aún no está bien soportada. */
body :not(.crazy, .fancy) {
  font-family: sans-serif;
}

Resultado

{{EmbedLiveSample('Ejemplo')}}

Especificaciones

Specification Status Comment
{{SpecName('CSS4 Selectors', '#negation', ':not()')}} {{Spec2('CSS4 Selectors')}} Extiende su argumento para permitir algunos selectores no simples.
{{SpecName('CSS3 Selectors', '#negation', ':not()')}} {{Spec2('CSS3 Selectors')}} Definición Inicial.

Compatibilidad con navegadores

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