JSFiddle - React, Tailwind, and code Playground
HTML
<div id="screen"><i class="material-icons" id="button">menu</i>
<div id="sidebar">
<ul>
<li><a href="#1">Nav 1</a>
</li>
<li><a href="#2">Nav 2</a>
</li>
<li><a href="#3">Nav 3</a>
</li>
</ul>
</div>
<hr />
<div>Hello</div>
</div>
CSS
/*
#button {
display: block;
text-decoration: none;
margin-top: 20px;
margin-left: 50px;
color: white;
width: 20px;
height:20px;
font-size: 30px;
transition: width 0.5s;
background-color: black;
text-align: center;
padding-bottom: 30px;
box-sizing: border-box;
}*/
#button {
margin-top: 20px;
margin-left: 50px;
font-size: 30px;
cursor: hand;
}
#sidebar {
position: absolute;
background-color: black;
left: -200px;
top: 0px;
width: 200px;
height: 100%;
transition: width 0.5s;
opacity: 0.7;
padding-top:50px;
-webkit-transition: left 1s;
transition: left 1s;
}
#sidebar ul {
list-style-type:none;
}
#screen {
position: fixed;
background-color: tan;
height: 100%;
width: 100%;
left: 0px;
top: 0px;
}
#sidebar:hover, #button:hover + #sidebar {
left: 0;
-webkit-transition: left 1s;
transition: left 1s;
}