JSFiddle - React, Tailwind, and code Playground

by lee_gladding

HTML

<nav id="menu">
       <button id="menuButton">Menu</button>
<div class="box">
  <ul>
  <li><a href="#">Home</a></li>
  <li><a href="#ContentWrap-2-about">About me</a></li>
  <li><a href="#">Work</a></li>
  <li><a href="#">Contact</a></li>
  </ul>
</div>
</nav>

CSS

#menu .box 
{
    position: fixed;
    text-align: center;
    overflow: hidden;
    z-index: -1;
    opacity: 0;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
    background: rgba(0,0,0,0.8);
    -webkit-transition: all 0.3s ease-in-out; 
    -moz-transition: all 0.3s ease-in-out; 
    -o-transition: all 0.3s ease-in-out; 
    transition: all 0.3s ease-in-out;
}
#menu ul 
{
    position: relative;
    top: 20%;
    -webkit-transform: scale(2);
    -moz-transform: scale(2);
    -ms-transform: scale(2);
    transform: scale(2);
    -webkit-transition: all 0.3s ease-in-out; 
    -moz-transition: all 0.3s ease-in-out; 
    -o-transition: all 0.3s ease-in-out; 
    transition: all 0.3s ease-in-out;
}
#menu li 
{ 
     display: inline-block; 
     margin: 20px;
     font-family: Arial, helvetica, sans-serif;
}
 
#menu li a 
{
    padding: 20px 15px;
    text-decoration: none;
    font: 500 25px oswald;
    color: #fff;
    -webkit-transition: all 0.2s ease-in-out; 
    -moz-transition: all 0.2s ease-in-out; 
    -o-transition: all 0.2s ease-in-out; 
    transition: all 0.2s ease-in-out;
    display: inline-block;
    position: relative;
    text-transform: uppercase;
    font-family: Arial, helvetica, sans-serif;
}
#menu li a:after 
{
    content: '';
    display: block;
    margin: auto;
    right: 0;
    bottom: 0;
    height: 3px;
    width: 0;
    margin-top: 3px;
    background: transparent;
    transition: width .2s ease, background-color .2s ease;
}
#menu li a:hover:after 
{
    width: 100%;
    background: #822222;
}
#menu li a:hover
{
    color: #822222;
} 

#menu .box.active
{ 
    opacity: 1; 
    z-index: 400;
}
#menuButton
{
    margin-left: 2.5em;
    font-size: 22px;
    font-weight: bold;
    text-transform: uppercase;
    margin-top: 5px;
    color: #000;
    font-family: Arial, helvetica, sans-serif;
    letter-spacing: .1em;
}
#menuButton:hover
{
    color: #822222;
    -webkit-transition: .2s;
    -moz-transition: .2s;
   ...

JavaScript

$(function () {
    $('#menuButton').on('click', function () {
        $('.box').toggleClass('active');
    });
    $('.box').on('click', function () {
        $(this).removeClass('active');
    });
});