Especificidad CSS

August 21st, 2008 Envía esta entrada a menéame Envía esta entrada a del.ici.ous

La Real Academia Española define la especificidad como la cualidad y condición de ser específico, o lo que es lo mismo: concreto, determinado. En los últimos años, los expertos en CSS se han apropiado de este término para denominar la cualidad que hace que un estilo prime sobre otro cuando ambos deberían afectar a un mismo elemento.

El principio en el que se basa es simple: el elemento más específico gana. Parece claro que una clase definida específicamente para un elemento html (como p .intro { }) prima sobre la definición general de ese elemento en la hoja de estilos (que sería p {}). Pero, ¿y dos etiquetas html frente a un id? (como por ejemplo div p {} y #cabecera {}), ¿por qué este elemento no sale como debería?. Esa es la clase de preguntas que responde la especificidad.

¿Cómo se calcula? Asignando un valor a cada tipo de elemento:

  • Un selector HTML tiene una especificidad de 1.
  • Dos selectores HTML tienen una especificidad de 2, es decir que se aplica siempre el selector con más elementos.
  • Un selector de clase tiene una especificidad de 10.
  • Dos selectores HTML con un selector de clase tienen una especificidad de 10 + 1 + 1.
  • Un selector id tiene una especificidad de 100.

Una vez asignados estos valores, éstos se suman para calcular el total (véanse ejemplos en htmldog y csstricks ) o se comparan por separado (véase un ejemplo de esto último en Smashing Magazine).

Por último, os recomendamos esta simpáticachuleta de especificidad CSS ambientada en Star Wars.

Categorí­a: Diseño web

Deja tu comentario

Requerido

Requerido, hidden



Tags HTML Permitidos:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

Trackback this post  |  Subscribe to the comments via RSS Feed

  Sabías que...
 
Sabías que...

... ya somos más de 1000 millones de internautas.

Hace tan solo 3 años se estimaban en poco más de 600 millones el número de internautas, lo que supone una tasa de incremento anual del 18%.

¿Aún sigue pensando que su empresa puede vivir de espaldas a Internet?

 
 
2mdc.com diseño web     C/ Matias Turrión, 24, 1º, Madrid 28043      Tel: 91 759 00 24       Fax 91 759 15 18     Diseño web