Dropdowns y menús
Redactado por
Sebastian V. Fecha de publicación
17/07/2025
Tiempo de lectura
6 min
Tema
Interactions
¿Qué son los Dropdowns y Menús?
Un dropdown es un menú oculto que se despliega o revela opciones secundarias cuando el usuario interactúa (hace clic o hover) con un botón disparador. Es el patrón de diseño por excelencia para la navegación compacta y las acciones de usuario.
¿Para qué sirven?
Sirven para conservar el preciado espacio en pantalla (real estate). Si tienes 10 acciones disponibles pero solo 2 son principales, las otras 8 van dentro de un menú de "Opciones".
- Navegación limpia: Agrupan enlaces categorizados sin saturar el encabezado de tu sitio web.
- Jerarquía de acciones: Esconden opciones peligrosas (Cerrar sesión, Eliminar cuenta) bajo un clic intencional.
- Revelación progresiva: Muestran información solo cuando el usuario activamente la requiere.
¿Cómo se usan?
El error más común es hacer que aparezcan de la nada cambiando display: none a display: block. Una interacción mágica utiliza el transform-origin para controlar desde dónde "crece" o "nace" el menú. Si el botón está arriba a la derecha, el menú debe originarse de forma orgánica desde esa esquina (transform-origin: top right) junto con un scale desde 0.95 a 1.
Consejo profesional
Para evitar el clásico problema donde el cursor se sale del botón un píxel y el menú colapsa (súper frustrante), añade padding transparente al menú o usa un pequeño retraso (transition-delay) al desaparecer.
Dropdown con Transform Origin
<div class="dropdown-wrapper">
<button class="dropdown-btn">
Opciones
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7" />
</svg>
</button>
<ul class="dropdown-menu">
<li><a href="#">Perfil de usuario</a></li>
<li><a href="#">Configuración</a></li>
<li class="divider"></li>
<li><a href="#" class="text-danger">Cerrar sesión</a></li>
</ul>
</div> Pasa el cursor sobre el botón para ver cómo el menú se despliega desde la esquina.
Errores comunes
Practica lo aprendido
Crea un menú dropdown con transform-origin que parezca desplegarse naturalmente.