.hamburger { position: relative; cursor: pointer; font-size: 32px; margin: auto 5px; height: 40px; width: 40px; pointer-events: auto; } .bar1, .bar2-1, .bar2-2, .bar3 { position: absolute; width: 40px; height: 5px; background-color: #404040; margin: 5px 0; transition: 0.3s; } .bar1 { top: 0; } .bar2-1, .bar2-2 { margin: 0; width: 20px; top: 50%; transform: translateY(-50%); } .bar2-1 { left: 0; } .bar2-2 { right: 0; } .bar3 { bottom: 0; } /* Rotate first bar */ .change .bar1 { -webkit-transform: rotate(-45deg) translate(-10px, 10px); transform: rotate(-45deg) translate(-8px, 8px); } /* Fade out the second bar */ .change .bar2-1 { opacity: 0; -webkit-transform: translateX(-50%); transform: translateX(-50%); } .change .bar2-2 { opacity: 0; -webkit-transform: translateX(50%); transform: translateX(50%); } /* Rotate last bar */ .change .bar3 { -webkit-transform: rotate(45deg) translate(-10px, -10px); transform: rotate(45deg) translate(-10px, -10px); }