<nav>
  <input type="checkbox" id="checkbox1" />
  <label for="checkbox1">
    <ul class="menu first">
      <li><a href="#">HOME</a></li>
      <li><a href="#">ABOUT</a></li>
      <li><a href="#">CONTACT</a></li>
      <li><a href="#">FAQ</a></li>
    </ul>
    <span class="toggle">☰</span>
  </label>
</nav>

<nav>
  <input type="checkbox" id="checkbox2" />
  <label for="checkbox2">
    <ul class="menu second">
      <li><a href="#">HOME</a></li>
      <li><a href="#">ABOUT</a></li>
      <li><a href="#">CONTACT</a></li>
      <li><a href="#">FAQ</a></li>
    </ul>
    <span class="toggle">☰</span>
  </label>
</nav>

<nav>
  <input type="checkbox" id="checkbox3" />
  <label for="checkbox3">
    <ul class="menu third">
      <li><a href="#">HOME</a></li>
      <li><a href="#">ABOUT</a></li>
      <li><a href="#">CONTACT</a></li>
      <li><a href="#">FAQ</a></li>
    </ul>
    <span class="toggle">☰</span>
  </label>
</nav>
@import url("https://fonts.googleapis.com/css?family=Droid+Sans");
nav {
  margin: 50px auto;
  max-width: 700px;
  width: 95%;
  font-family: "Droid Sans", sans-serif;
}

#checkbox1,
#checkbox2,
#checkbox3,
.toggle {
  display: none;
}

.menu {
  padding: 0;
  margin: 0;
  max-width: 700px;
  height: 50px;
  border-radius: 5px;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
  list-style-type: none;
}

.menu li a {
  text-decoration: none;
  align-self: center;
  border-radius: 5px;
  font-size: 14px;
  padding: 10px 15px;
  transition: background 0.2s linear;
}

@media screen and (max-width: 600px) {
  .menu li a {
    font-size: 13px;
  }
}

@media screen and (max-width: 550px) {
  .toggle {
    clear: both;
    display: block;
    text-align: center;
    font-size: 14px;
    line-height: 40px;
    cursor: pointer;
    width: 100%;
    height: 40px;
    font-size: 18px;
    color: #595959;
    background: #dbdbdb;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    transition: all 0.1s linear;
  }
  .toggle:hover {
    background: #cecece;
  }
  #checkbox1:checked + label .first li {
    opacity: 1;
    visibility: visible;
    transition: all 0.7s linear;
  }
  #checkbox2:checked + label .second li {
    opacity: 1;
    visibility: visible;
    transition: all 0.7s linear;
  }
  #checkbox3:checked + label .third li {
    opacity: 1;
    visibility: visible;
    transition: all 0.7s linear;
  }
  #checkbox1:checked + label .first {
    height: 200px;
  }
  #checkbox2:checked + label .second {
    height: 200px;
  }
  #checkbox3:checked + label .third {
    height: 200px;
  }
  .menu {
    border-radius: 0px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    height: 0px;
    transition: height 0.3s linear;
  }
  .menu li {
    display: flex;
    /* magic */
    align-self: center;
    width: 95%;
    opacity: 0;
    visibility: hidden;
  }
  .menu li a {
    width: 95%;
    text-align: center;
    align-self: center;
    align-content: center;
  }
}

.first {
  background: #625b60;
}

.first li a {
  color: #fff;
}

.first li a:hover {
  background: #6d6268;
}

.second {
  background: #51535f;
}

.second li a {
  color: #fff;
}

.second li a:hover {
  background: #5d5f6d;
}

.third {
  background: #eee;
}

.third li a {
  color: #606060;
}

.third li a:hover {
  background: #d5d5d5;
}

body {
  background: #6c6b6e;
}
Run Pen

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.