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");
})