JSFiddle - React, Tailwind, and code Playground
HTML
<div class="pageWrapper">
<div class="wrapper">
<header>
<span>Flexible Navigation</span>
<div id="menu-link">
<div class="hamburger-bar-group">
<span class="hamburger-bar"></span>
<span class="hamburger-bar"></span>
<span class="hamburger-bar"></span>
</div>
</div>
</header>
<div class="nav-wrapper">
<ul class="nav">
<li><a href="#">Home</a></li>
<li><a href="#">News</a></li>
<li><a href="#">Kontakt</a></li>
<li><a href="#">Impressum</a></li>
</ul>
</div>
<div class="content">
<div class="column">Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.</div>
<div class="column">Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.</div>
<div class="column">Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit...
CSS
/* Layout */
.nav {
list-style-type:none;
margin:0;
padding:0;
overflow:hidden;
}
.nav li {
float:left;
}
/* Hamburger Icon */
#menu-link {
display:none;
float:left;
cursor:pointer;
margin-top:15px;
}
.hamburger-bar-group {
background-color:white;
border:1px solid grey;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
width:37px;
padding:8px 8px 4px 8px;
}
.hamburger-bar {
background:black;
display:block;
height:3px;
margin-bottom:4px;
width:19px;
}
/* Styling */
header {
min-height:80px;
line-height:70px;
vertical-align:middle;
padding:5px 20px 10px 20px;
margin-bottom:10px;
font-size:25px;
background:#221971;
color:white;
}
.nav-wrapper {
border:1px solid #FDDAA2;
}
.nav a, .nav a:visited, .nav a:hover {
color:black;
text-decoration:none;
padding:10px;
display:block;
}
@media screen and (max-width: 500px) {
#menu-link {
display:block;
}
.nav-wrapper {
height:100%;
position:absolute;
top:0;
left:-70%;
width:70%;
background:#221971;
border:1px solid white;
}
.nav li {
float:none;
width:100%;
text-align:center;
border:1px solid white;
}
.nav li:first-child {
border-top: none;
}
.nav a, .nav a:visited, .nav a:hover {
color:white;
}
header {
text-align:center;
}
/* Off Canvas */
.wrapper {
-webkit-transition: all .5s ease;
transition: all .5s ease;
position:relative;
left:0%; /* set in both classes */
}
.open {
left:70%; /* set in both classes */
}
.pageWrapper {
overflow-x:hidden;
}
}
/* Three column Layout */
.column {
float:left;
width:33.33333%;
padding:0 15px;
min-height:1px;
}
@media...
JavaScript
$(document).ready(function() {
$('#menu-link').on('click', function() {
var wrapper = $('.wrapper');
$('.wrapper').toggleClass('open');
});
});