<input type="checkbox" id="hamburger-check">
<label class="hamburger-label" for="hamburger-check">
  <div class="hamburger-block">
    <span id="span01"></span>
    <span></span>
    <span></span>
  </div>
<label>
body {
  background-color: black;
}
#hamburger-check {
  display:none;
}
.hamburger-block,
.hamburger-block span {
  display: block;
  box-sizing: border-box;
  transition: all .4s;
}
.hamburger-block {
  margin: 15px;
  position: relative;
  width: 25px;
  height: 22px;
}
.hamburger-block span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 2px;
}
.hamburger-block span:nth-of-type(1) {
  top: 0;
}
.hamburger-block span:nth-of-type(2) {
  top: 10px;
}
.hamburger-block span:nth-of-type(3) {
  bottom: 0;
}

#hamburger-check:checked
  + .hamburger-label
  > .hamburger-block
  > span:nth-of-type(1) {
    -webkit-transform: translateY(10px) rotate(-315deg);
    transform: translateY(10px) rotate(-315deg);
}
#hamburger-check:checked
  + .hamburger-label
  > .hamburger-block
  > span:nth-of-type(2) {
    opacity: 0;
}
#hamburger-check:checked
  + .hamburger-label
  > .hamburger-block
  > span:nth-of-type(3) {
    -webkit-transform: translateY(-10px) rotate(315deg);
    transform: translateY(-10px) rotate(315deg);
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.