hamburgers

hamburgers to arrow

by Amal Das

HTML

<div class="hamburger">
        <div class="hamburger-box">
          <div class="hamburger-inner"></div>
        </div>
      </div>

CSS

body {
    background-color: #ec407a;
}
.hamburger {
    font: inherit;
    display: inline-block;
    overflow: visible;
    margin: 0;
    padding: 15px;
    cursor: pointer;
    transition-timing-function: linear;
    transition-duration: .15s;
    transition-property: opacity,filter;
    text-transform: none;
    color: inherit;
    border: 0;
    background-color: transparent;
}
.hamburger-box {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 24px;
}
.hamburger-inner, .hamburger-inner:after, .hamburger-inner:before {
    position: absolute;
    width: 40px;
    height: 4px;
    transition-timing-function: ease;
    transition-duration: .15s;
    transition-property: transform;
    border-radius: 4px;
    background-color: #fff;
}
.hamburger-inner {
    top: 50%;
    display: block;
    margin-top: -2px;
}
.hamburger-inner:after, .hamburger-inner:before {
    display: block;
    content: "";
}
.hamburger-inner:before {
    top: -10px;
}
.hamburger-inner:after {
    bottom: -10px;
}
.hamburger.is-active .hamburger-inner {
    transform: rotate(360deg);
}
.hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner:after, .hamburger.is-active .hamburger-inner:before {
    background-color: #fff;
}
.hamburger.is-active .hamburger-inner:before {
    transform: translate3d(8px,0,0) rotate(45deg) scaleX(.7);
}
.hamburger.is-active .hamburger-inner:after {
    transform: translate3d(8px,0,0) rotate(-45deg) scaleX(.7);
}

JavaScript

$(".hamburger").on("click",function(){
$(this).toggleClass("is-active");
})