Tipos de selectores en CSS1, CSS2 y CSS3

Tipos de selectores en CSS1, CSS2 y CSS3

Los selectores de CSS son identificadores para poder aplicar estilos a los elementos deseados. Hasta aquí, se supone que después de tanto tiempo trabajando con estilos, aclarar lo que es un selector es algo que sobra. Sin embargo, lo que no es habitual es saber los tipos de selectores que hay, sus funciones, cómo se pueden anidar y sobre todo, con la llegada de CSS3, cuáles son los nuevos.

Para ver todo ello nada mejor que irnos al grano y ver todos los selectores que existen, su sintaxis y funciones. La siguiente tabla la he extraído y traducido al castellano de la guía de referencia CSS del portal w3schools, ya que es muy completa. Algunos de ellos ya los vimos al hablar de las pseudoclases.

SelectorEjemploDescripción del ejemploCSS
.clase.titularSelecciona todos los elementos con class=»titular»1
#id#menuSelecciona el elemento con id=»menu»1
**Selecciona todos los elementos2
elementopSelecciona todos los elementos <p>1
elemento,elementodiv,pSelecciona todos los <div> y todos los <p>1
elemento elementodiv pSelecciona todos los <p> dentro de los <div>1
elemento>elementodiv>pSelecciona todos los <p> donde el padre sea un <div>2
elemento+elementodiv+pSelecciona todos los <p> que estén inmediatamente después de un <div>2
[attributo][target]Selecciona todos los elementos con el atributo target2
[attributo=valor][target=_blank]Selecciona todos los elementos con target=»_blank»2
[attributo~=valor][title~=coche]Selecciona todos los elementos que contengan «coche» en el atributo title2
[attributo|=valor][lang|=en]Selecciona todos los elementos cuyo atributo lang comience por «en»2
:linka:linkSelecciona todos los enlaces no visitados1
:visiteda:visitedSelecciona todos los enlaces visitados1
:activea:activeSelecciona los enlaces activos1
:hovera:hoverSelecciona los enlaces en estado rollover1
:focusinput:focusSeleccionan los input que tengan el focus2
:first-letterp:first-letterSelecciona la primera letra de cada <p>1
:first-linep:first-lineSelecciona la primera línea de cada <p>1
:first-childp:first-childSelecciona cada <p> que sea el primer hijo de otro elemento padre2
:beforep:beforeInserta contenido antes de cada <p>2
:afterp:afterInserta contenido después de cada <p>2
:lang(idioma)p:lang(es)Selecciona cada <p> cuyo valor del atributo lang sea «es»2
elemento1~elemento2p~ulSelecciona cada <ul> que sea precedido por un <p>3
[attributo^=valor]a[src^=»https»]Selecciona cada <a> cuyo valor del atributo src comience con «https»3
[attributo$=valor]a[src$=».pdf»]Selecciona cada <a> cuyo valor del atributo src termine con «.pdf»3
[attributo*=valor]a[src*=»veteasabertu»]Selecciona cada <a> cuyo valor del atributo src contenga la subcadena «veteasabertu»3
:first-of-typep:first-of-typeSelecciona cada <p> que sea el primer <p> de un elemento padre3
:last-of-typep:last-of-typeSelecciona cada <p> que sea el último <p> de un elemento padre3
:only-of-typep:only-of-typeSelecciona cada <p> que sea el único <p> de su padre3
:only-childp:only-childSelecciona cada <p> que sea el único elemento hijo de su padre3
:nth-child(n)p:nth-child(2)Selecciona cada <p> que sea el segundo hijo de su padre3
:nth-last-child(n)p:nth-last-child(2)Selecciona cada <p> que sea el segundo hijo de su padre, contando desde el último hijo3
:nth-of-type(n)p:nth-of-type(2)Selecciona cada <p> que sea el segundo <p> de su padre3
:nth-last-of-type(n)p:nth-last-of-type(2)Selecciona cada <p> que sea el segundo <p> de su padre, contando desde el último hijo3
:last-childp:last-childSelecciona cada <p> que sea el último hijo de su padre3
:root:rootSelecciona el elemento raíz del documento3
:emptyp:emptySelecciona cada <p> que no tenga hijos (incluyendo cadenas de texto)3
:target#news:targetSelecciona el actual estilo #noticia activo (al hacer click en una URL que contenga ese nombre de anchor)3
:enabledinput:enabledSelecciona cada <input> disponible3
:disabledinput:disabledSelecciona cada <input> no disponible3
:checkedinput:checkedSelecciona cada <input> marcado3
:not(selector):not(p)Selecciona todos los elementos que no sean <p>3
::selection::selectionSelecciona la parte del texto que haya seleccionado el usuario (con el ratón por ejemplo)3
Jesús Tovar - Desarrollador web freelance Sevilla

2 respuestas a «Tipos de selectores en CSS1, CSS2 y CSS3»

  1. Avatar de Joaquin Rua
    Joaquin Rua

    Buen aporte, gracias!

    1. Avatar de Jesús Tovar

      Me alegra que te haya servido 😉 ¡Un abrazo!

Responder a Joaquin Rua Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *