Hover en CSS: ¿Qué es, para qué sirve y cómo se utiliza?

| Última modificación: 26 de marzo de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

Si lo que quieres es darle vida a tus páginas web, vamos a presentarte una herramienta casi mágica que te ayudará en ese proceso: Hover en CSS. Con ella podrás crear efectos interactivos simplemente pasando el cursor sobre un elemento. También, te permitirá resaltar enlaces hasta animaciones complejas. Esta herramienta será tu aliada para mejorar la experiencia del usuario en tus páginas.

¿Qué es el hover en CSS?

Como te lo comentamos antes, el hover en CSS es una pseudo-clase que se activa cuando el usuario interactúa con un elemento utilizando un dispositivo señalador, como un mouse. Esta interacción se produce cuando el usuario pasa el cursor sobre el elemento, sin necesidad de hacer clic.

Esta funcionalidad es especialmente útil para realzar la interactividad de tu página web y mejorar la experiencia del usuario de una manera sutil pero efectiva. Lo maravilloso es que con solo unos pocos ajustes en tu código CSS, puedes agregar dinamismo que hará que tus elementos cobren vida y destaquen frente a quienes visiten tu página. Si quieres profundizar un poco en el tema de pseudoclases en CSS, te invitamos a leer el artículo.

¿Para qué sirve?

El hover en CSS tiene una amplia gama de usos. Aquí hay algunos ejemplos:

  • Resaltar enlaces: El resaltado de enlaces con hover en CSS es una práctica común para mejorar la usabilidad y la estética de un sitio web. Aparte de cambiar el color o subrayar los enlaces, también puedes utilizar propiedades como transition para suavizar el cambio de color o de estilo cuando el usuario pasa el cursor sobre un enlace. Esto proporciona una experiencia más agradable y profesional.
  • Efectos de imagen: Los efectos de imagen con hover en CSS pueden mejorar significativamente la presentación de tu contenido visual. Además de mostrar información adicional o ampliar una imagen, también puedes utilizar la propiedad transform para escalar la imagen cuando el usuario pasa el cursor sobre ella. Este efecto de zoom puede revelar detalles ocultos y permitir que los usuarios examinen la imagen con más detalle sin ocupar demasiado espacio en la página.
  • Menús desplegables: Son una forma efectiva de organizar y presentar opciones de navegación en un sitio web. No solo te revela opciones adicionales cuando el usuario pasa el cursor sobre un elemento del menú, puedes usar propiedades como opacity o height con transiciones suaves para crear un efecto de despliegue gradual cuando el usuario activa el hover sobre un elemento del menú.

Puedes complementar este aprendizaje con los selectores básicos CSS para el diseño de tu página web, la composición de clases CSS para transformar la apariencia y funcionalidad de tu sitio web, los atributos CSS y, para distribuir elementos HTML en una página, el posicionamiento de elementos en CSS.

Compatibilidad de Hover en CSS con navegadores / Fuente. MDN web docs

Cómo se utiliza el hover en CSS

Usar hover en CSS es bastante sencillo. Solo necesitas seleccionar el elemento al que deseas aplicar el efecto y definir los estilos que deseas que cambien cuando el usuario pase el cursor sobre él.

/* Cambia el color del texto cuando se pasa el cursor sobre un enlace */ 
a:hover { 
    color: orange; 
}

Los estilos que se definan por la pseudo-clase :active van a ser anulados por cualquier pseudo-clase posterior relacionada con el enlace (:link, :visited, o :active) que cuente con la misma especialidad.

Es importante tener en cuenta que el hover en CSS puede presentar desafíos en pantallas táctiles. Lo que sucede es que, el hover puede variar su comportamiento dependiendo del navegador y, por consiguiente, se puede ver afectada la experiencia del usuario en dispositivos móviles. Así que, es fundamental que te asegures de que el contenido sea accesible en todos los dispositivos.

Ejemplo práctico

Imagina que quieres crear una galería de imágenes en tu sitio web. Cuando el usuario pase el cursor sobre una miniatura, se mostrará la imagen a tamaño completo. Veamos cómo se puede lograr esto con hover en CSS:

<div class="gallery">
     <img src="thumbnail1.jpg" alt="Imagen 1">
     <img src="thumbnail2.jpg" alt="Imagen 2"> 
     <img src="thumbnail3.jpg" alt="Imagen 3"> 
</div>

/* Oculta las imágenes de tamaño completo por defecto */ 
.gallery img { 
   display: none; 
} 

/* Muestra la imagen de tamaño completo cuando se pasa el cursor sobre la miniatura */ .gallery img:hover { 
   display: block; 
}

Con este código, las imágenes de tamaño completo se mostrarán solo cuando el usuario pase el cursor sobre las miniaturas.

Ya pudiste darte cuenta de que el hover en CSS es una herramienta poderosa para mejorar la interactividad y la experiencia del usuario en tu sitio web. Desde efectos simples hasta animaciones complejas, las posibilidades son infinitas. ¡No dudes en experimentar y agregar un toque de magia a tus proyectos!

En el Desarrollo Web Full Stack Bootcamp de KeepCoding, aprenderás no solo sobre CSS y HTML, sino también sobre JavaScript, frameworks modernos como React y Node.js, y mucho más. Únete a nosotros y comienza tu viaje hacia una carrera emocionante en el sector tecnológico. ¡No te pierdas esta oportunidad de cambiar tu vida!

Alberto Casero

Alberto Casero es CTO en Watium, Fundador de Kas Factory & Coordinador del Bootcamp en Desarrollo Web.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Desarrollo Web

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado