Saltar la navegación

Pseudo-clases

Concepto

Concepto:
  • Las pseudo-clases nos permiten seleccionar elementos basados en un estado específico.
  • Por ejemplo, las pseudo-clases nos permiten poner estilos que responden a:
    • al movimiento del ratón sobre un elemento
    • Enlaces visitados y no visitados
    • Elementos que obtienen el foco
    • los que son el primer elemento de su tipo
Ventajas
  • Tienden a actuar como si hubieras aplicado una clase en una parte determinada del documento
  • Ayudan a reducir el exceso de clases y proporcionan un marcado más flexible y fácil de mantener.

Sintaxis

selector:pseudo-class {
     property: value;
}
Ejemplo:
Aplicar un determinado color a un enlace según el estado de este (no visitado, visitado, mouse sobre el enlace, enlaces seleccionados)
/* unvisited link */
a:link {
     color: #FF0000;
}

Combinando clases con pseudo-clases

Las Pseudo-clases pueden combinarse con las clases CSS. Ejemplo: Cambiar de color del enlace cuando el mouse pasa sobre este:
a.highlight:hover {
     color: #ff0000;
}

Tool Tip

Un ejemplo clásico de la combinación de pseudo-clases y clases CSS es el ToolTip para brindar retroalimentación al usuario.

index.html

<!DOCTYPE html>
<html>
   <head></head>
<body>
   <div>Hover over me to show the p element
      <p>Tada! Here I am!</p>
   </div>
</body>
</html>



style.css

p {
  display: none;
  background-color: yellow;
  padding: 20px;
}

div:hover p {
  display: block;
}

Categorías

Se puede categorizar a las pseudo-clases según la relación con la que tienen con los elementos HTML o con la firma de seleccionar elementos HTML. Mira las siguientes categorías:

  1. Pseudo-clases relacionadas a ENLACES
  2. Pseudo-clases relacionadas a ENLACES e INPUT
  3. Pseudo-clases relacionadas a Número/Posición
  4. Pseudo-clases Relacionales
  5. Pseudo-clases relacionadas al Texto

El siguiente contenido presenta pestañas por cada una de las categorías de Pseudo-clases. No obstante, una lista completa de las pseudo-clases la puedes encontrar en W3c School.

ENLACES

Pseudo-clase
Descripción
Ejemplo
:link
Seleccionar enlaces no visitados
:visited
Seleccionar enlaces visitados
:hover
Seleccionar enlaces que tienen por encima el cursor
:active
Seleccionar los enlaces seleccionados (activos). Un enlace se convierte en activo cuando se lo clica.

NOTA: La documentación oficial indica que en el caso de los enlaces se debe seguir el siguiente orden de asignación de estilos para tener efectividad: link || visited --> hover --> active

ENLACES e INPUT

Pseudo-clase
Descripción
Ejemplo
:focus
:target
:enabled
:disabled
:checked
:required
:optional
:read-only
:read-write

Número/Posición

Pseudo-clase
Descripción
Ejemplo
:first-child
:last-child
:nth-child(n)
Selecciona cada elemento que es el -avo- hijo de su padre, sin considerar el tipo.
:nth-of-type()
:first-of-type
:last-of-type
:nth-last-child()
:only-of-type

Relacionales

Pseudo-clase
Descripción
Ejemplo
:not()
:empty

Texto

Pseudo-clase
Descripción
Ejemplo
:lang

Creado con eXeLearning (Ventana nueva)