Dino Geek, intenta ayudarte

¿Cómo animar un ícono de menú de hamburguesas en CSS?


Para animar un ícono de menú de hamburguesas, necesitaríamos tres barras horizontales y cambiaríamos su posición y orientación en el evento de clic para convertirlas en una X o alguna otra animación.

Vamos a crear una animación simple donde el icono de tres líneas se convierte en una ‘X’ cuando se hace clic.

Aquí hay un ejemplo paso a paso de cómo hacerlo usando HTML y CSS:

HTML:

```html


```

CSS:

```css
/* Estilos globales para el botón y las líneas */
.hamburger { position: relative; width: 36px; height: 24px; border: none; background: none; cursor: pointer; padding: 0; margin: 0;
}

.line { background: #000; /* color de la línea del menú */ height: 2px; width: 100%; position: absolute; transition: all 0.5s; /* tiempo de transición (la animación en sí misma) */
}

.line:nth-child(1) { top: 0;
}

.line:nth-child(2) { top: 50%; transform: translateY(-50%);
}

.line:nth-child(3) { top: 100%; transform: translateY(-100%);
}

/* Estilos cuando el menú está “abierto” */
.hamburger.active .line:nth-child(1),
.hamburger.active .line:nth-child(3) { top: 50%; width: 0%; /* esconden las líneas superior e inferior */
}

.hamburger.active .line:nth-child(1) { transform: translateY(-50%) rotate(45deg);
}

.hamburger.active .line:nth-child(3) { transform: translateY(-50%) rotate(-45deg);
}
```

JQuery:

```javascript
$(“.hamburger”).click(function(){ $(this).toggleClass(“active”);
})
```

Aquí tengo una simple animación de transformar la hamburguesa en una ‘X’. Al hacer clic en el botón `.hamburger`, se añade/elimina una clase `.active` que contiene diferentes estilizaciones y transformaciones para las líneas del icono.

Es necesario usar un poco de JavaScript o jQuery para cambiar la clase del botón en el evento de clic.


Genera artículos simplemente para optimizar tu SEO
Genera artículos simplemente para optimizar tu SEO





DinoGeek ofrece artículos sencillos sobre tecnologías complejas

¿Desea ser citado en este artículo? Es muy sencillo, contáctenos en dino@eiki.fr.

CSS | NodeJS | DNS | DMARC | MAPI | NNTP | htaccess | PHP | HTTPS | Drupal | WEB3 | LLM | Wordpress | TLD | Nombre de dominio | IMAP | TCP | NFT | MariaDB | FTP | Zigbee | NMAP | SNMP | SEO | E-Mail | LXC | HTTP | MangoDB | SFTP | RAG | SSH | HTML | ChatGPT API | OSPF | JavaScript | Docker | OpenVZ | ChatGPT | VPS | ZIMBRA | SPF | UDP | Joomla | IPV6 | BGP | Django | Reactjs | DKIM | VMWare | RSYNC | Python | TFTP | Webdav | FAAS | Apache | IPV4 | LDAP | POP3 | SMTP

| Whispers of love (API) | Déclaration d'Amour |






Aviso legal / Condiciones generales de uso