Features
Customizable
Easily customize the appearance using CSS variables
Accessible
Built with accessibility in mind for all users
Responsive
Works seamlessly across all device sizes
Installation
npm i @tomoyakuroda/css-variables-hamburgers
Usage
- Download the CSS file css-variable-hamburgers.min.css.
-
Include the CSS file in your HTML document:
import '@tomoyakuroda/css-variables-hamburgers/css-variables-hamburgers.min.css'; or <link rel="stylesheet" href="css-variable-hamburgers.min.css"> or <link href="https://cdn.jsdelivr.net/npm/@tomoyakuroda/css-variables-hamburgers@1/css-variables-hamburgers.min.css" rel="stylesheet">
-
Add the base hamburger markup:
<button class="hamburger" type="button"> <span class="hamburger-box"> <span class="hamburger-inner"></span> </span> </button>
-
Append the class name of the type of hamburger you’re craving (e.g. "hamburger--collapse"):
<button class="hamburger hamburger--collapse" type="button"> <span class="hamburger-box"> <span class="hamburger-inner"></span> </span> </button>
-
Customize the hamburger menu using CSS variables:
:root { --hamburger-padding-x : 15px; --hamburger-padding-y : 15px; --hamburger-layer-width : 40px; --hamburger-layer-height : 4px; --hamburger-layer-spacing : 6px; --hamburger-layer-color : #000; --hamburger-layer-border-radius : 4px; --hamburger-hover-opacity : 0.7; --hamburger-active-layer-color : var(--hamburger-layer-color); --hamburger-active-hover-opacity: var(--hamburger-hover-opacity); }
-
Toggle the hamburger menu animation with JavaScript:
<script> // Look for .hamburger var hamburger = document.querySelector(".hamburger"); // On click hamburger.addEventListener("click", function() { // Toggle class "is-active" hamburger.classList.toggle("is-active"); // Do something else, like open/close menu }); </script>
Hamburger Types
You can choose from the following hamburger-type classes:
- hamburger--3dx
- hamburger--3dx-r
- hamburger--3dy
- hamburger--3dy-r
- hamburger--3dxy
- hamburger--3dxy-r
- hamburger--arrow
- hamburger--arrow-r
- hamburger--arrowalt
- hamburger--arrowalt-r
- hamburger--arrowturn
- hamburger--arrowturn-r
- hamburger--boring
- hamburger--collapse
- hamburger--collapse-r
- hamburger--elastic
- hamburger--elastic-r
- hamburger--emphatic
- hamburger--emphatic-r
- hamburger--minus
- hamburger--slider
- hamburger--slider-r
- hamburger--spin
- hamburger--spin-r
- hamburger--spring
- hamburger--spring-r
- hamburger--stand
- hamburger--stand-r
- hamburger--squeeze
- hamburger--vortex
- hamburger--vortex-r