Skip to content

Instantly share code, notes, and snippets.

@motsu0
Created September 4, 2020 11:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save motsu0/788d0142bca79c3ef88f4de6fa1664ba to your computer and use it in GitHub Desktop.
Save motsu0/788d0142bca79c3ef88f4de6fa1664ba to your computer and use it in GitHub Desktop.
.hamb-bt{
display: inline-block;
position: relative;
width: 50px;
height: 50px;
background-color: #C8E6C9;
}
.hamb-line{
position: absolute;
left: 50%;
transform: translate(-50%,-50%);
width: 80%;
height: 6%;
background-color: #388E3C;
transition: transform .2s;
}
.hamb-line.line1{
top: 25%;
}
.hamb-line.line2{
top: 50%;
}
.hamb-line.line3{
top: 75%;
}
.hamb-line.line1.open,.hamb-line.line2.open{
top: 50%;
transform: translate(-50%,-50%) rotateZ(45deg);
}
.hamb-line.line3.open{
top: 50%;
transform: translate(-50%,-50%) rotateZ(-45deg);
}
<div class="hamb-bt">
<div class="hamb-line line1"></div>
<div class="hamb-line line2"></div>
<div class="hamb-line line3"></div>
</div>
const hamb_bt = document.getElementsByClassName('hamb-bt');
const hamb_lines = document.getElementsByClassName('hamb-line');
[...hamb_bt].forEach(el=>{
el.addEventListener('click',hamb_toggle);
});
function hamb_toggle(){
[...hamb_lines].forEach(el=>{
el.classList.toggle('open');
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment