Sintaxis básica

La sintaxis general de cualquier declaración de estilo, independientemente de dónde la apliquemos, va a estar compuesta por tres elementos:

selector {propiedad:valor}

donde selector va a ser, básicamente, el elemento html que deseamos definir, la propiedad el atributo que queremos modificar, apareciendo por último el valor que deseamos asignarle al atributo. La propiedad se separa del atributo mediante dos puntos y ambos se encierran entre llaves.

Cuando los valores requieren especificar un tipo de unidad, esta se indica a continuación del valor numérico, sin espacio de separación: 1cm sería una notación correcta, mientras que 1 cm no lo sería.

Selectores de tipos

El selector más sencillo es el que denominamos de tipo. Se refiere a una etiqueta definida en el lenguaje HTML. Su gran ventaja será que con una única modificación en una hoja de estilos podremos modificar la apariencia de todos las páginas de un sitio al variar la presentación de un determinado tipo.

Ej: body {color:white}

Para cada selector podremos establecer más de una propiedad. Para separarlas utilizaremos el punto y coma, siendo habitual para favorecer la legibilidad, que cada propiedad se escriba en un renglón.

Ver ejemplo

Agrupando selectores

Si queremos aplicar una propiedad común a varios selectores sin necesidad de tener que definirla en cada caso podemos agruparlos listándolos separados por comas y haciendo una definición común para todos ellos.

Ej.: h1,h2,h3 {color:blue}

Ver ejemplo

Selectores contextuales

Podemos realizar una selección de elementos del documento para aplicarles un determinado formato. Podríamos, por ejemplo querer que los fragmentos que estuvieran enfatizados mediante la etiqueta <em> aparecieran en color verde. Pero podríamos ser incluso más específicos indicando que sólo queremos que aparezcan en color verde los fragmentos enfatizados que formen parte de una lista. Esto lo haríamos colocando primero el selector li y, a continuación separado por un espacio, el selector em para luego especificar las propiedades

Ej.: li em {color: green}

Ver ejemplo

Clases

El selector class nos permite definir diferentes estilos para el mismo elemento HTML. El ejemplo siguiente supondría la posibilidad de tener dos tipos de párrafo en el documento: uno en azul y otro en rojo, en función de la clase que cada uno lleve indicada. Para establecer la clase añadimos un punto y el nombre que le adjudicamos a la clase a continuación del selector y antes de iniciar las propiedades.

Ej.: p.azul {color: blue} p.rojo {color: red}

Ver ejemplo

Sólo se puede aplicar una clase a un elemento html.

Es muy frecuente que la definición de las clases se haga sin ligarlas a una etiqueta concreta. En el ejemplo anterior podría omitirse la referencia al elemento p y eso haría que las características de la clase se aplicaran a cualquier elemento al que se le aplicara. En este caso el selector empieza con un punto seguido del nombre de la clase

Ej.: .azul {color: blue} .rojo {color: red}

Ver ejemplo

Pseudoclases

Las pseudoclases se utilizan para particularizar algunos efectos de determinados selectores en algunas situaciones especiales. Uno de los grupos que se aplica más frecuentemente es el que tiene que ver con la etiqueta <a> para marcar diferentes presentaciones de los enlaces.

La sintaxis es ligeramente diferente de la general: selector:pseudoclase {propiedad : valor}

Pseudoclases relacionadas con los vínculos

Su función es cambiar la apariencia según el estado del vínculo. Existen cuatro tipos:

Ver ejemplo

El orden en el que se deben especificar estas pseudoclases en las hojas de estilos para que tengan efecto es el que se ha utilizado para describirlas.

Existen también los llamados pseudoelementos que verás en la sección dedicada al texto pero todavía podemos considerar la pseudoclase que se refiere al primer elemento hijo first-child que nos permitiría obtener, por ejemplo un efecto similar al que presentan algunas ediciones impresas cuando el primer párrafo de un capítulo se muestra en un tamaño más grande o en itálica.

Ver ejemplo

El selector id

Mientras que el selector clase puede aplicarse a varios elementos del mismo o diferente tipo en una página podemos crear también un selector id para diferenciar elementos específicos que añadirán alguna característica diferente de las que tienen los elementos de su clase. El nombre del selector se inicia con el signo # seguido del nombre del identificador.

Ej: #rojo {color: red}

Ver ejemplo

Comentarios

Puede venir muy bien incluir comentarios que nos sirvan para aclarar o recordar algún aspecto de las especificaciones que escribimos en una hoja de estilo. Para hacerlo lo iniciaremos con /* y lo finalizaremos con */

Ej: /* Esto es un comentario*/