Selectores de atributos en CSS

Los selectores de atributos en CSS son una herramienta muy útil que permite aplicar estilos a elementos HTML en función de los atributos que tengan (o de sus valores).

En lugar de depender únicamente de clases o identificadores, con los selectores de atributos podemos dar estilo basándonos en cosas como: el tipo de un input, el destino de un enlace o si un campo de formulario está deshabilitado.


Sintaxis básica

  • elemento → el tipo de etiqueta HTML (a, input, div, etc.).
  • [atributo] → el atributo que debe tener el elemento (href, type, disabled, etc.).

Ejemplo:

Esto aplica un fondo gris a todos los campos de formulario que tengan el atributo disabled.


Tipos de selectores de atributos

1- Selector por presencia de atributo

Selecciona elementos que tengan un atributo, sin importar su valor.

Todos los enlaces con atributo target (ej. target="_blank") se pintarán en rojo.


2- Selector por valor exacto

Selecciona elementos cuyo atributo tenga un valor específico.

Afecta solo a los input de tipo contraseña.


3- Selector por valor con prefijo (^=)

Coincide con atributos cuyo valor empieza con un texto.

Estiliza los enlaces que comienzan con https.


4- Selector por valor con sufijo ($=)

Coincide con atributos cuyo valor termina con un texto.

Aplica a todas las imágenes con extensión .png.


5- Selector por valor que contiene (*=)

Coincide con atributos que incluyen un texto en cualquier parte del valor.

Resalta todos los enlaces que tengan «wikipedia» en la URL.


6- Selector por valor de palabra (~=)

Coincide si el atributo contiene una palabra concreta (separada por espacios).

Esto aplicará a elementos con title="dato importante", pero no a title="importante123".


7- Selector por valor de prefijo de palabra (|=)

Coincide con un valor exacto o con un valor seguido de guion (muy útil para idiomas).

Aplicará a lang="es" y también a lang="es-ES".


Ejemplo práctico

  • El enlace a Google aparecerá en rojo.
  • El enlace a Wikipedia estará en negrita.
  • La imagen con alt «logo importante» tendrá un borde dorado.

Conclusión

Los selectores de atributos en CSS permiten aplicar estilos basados en atributos HTML sin necesidad de clases o IDs adicionales. Son muy potentes para casos como:

  • Formularios (input[type="email"])
  • Enlaces (a[href^="https"])
  • Idiomas ([lang|="es"])
  • Imágenes por extensión (img[src$=".jpg"])

Con ellos puedes escribir CSS más flexible y semántico, adaptado al contenido de tu HTML.

Comentarios

Deja una respuesta

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