A responsive hamburger menu that toggles mobile navigation with smooth animations.
burger-menu/
├── index.html # HTML structure
├── style.css # Styles and animations
├── script.js # Menu toggle logic
└── README.md # This file
// Good: Use classes for state
menuButton.addEventListener('click', () => {
nav.classList.toggle('active');
button.classList.toggle('active');
});
.nav {
transform: translateX(-100%);
transition: transform 0.3s ease;
}
.nav.active {
transform: translateX(0);
}
/* Transform hamburger lines to X */
.line1.active {
transform: rotate(45deg) translateY(10px);
}
.line2.active {
opacity: 0;
}
.line3.active {
transform: rotate(-45deg) translateY(-10px);
}