JSFiddle - React, Tailwind, and code Playground
by sazakharov
HTML
<div class="top-panel">
<div class="left-side">
<h1><a href="#" class="icon-iconmonstr-infinity-1"><span>Creative</span> Box</a></h1>
</div>
<div class="hamburger-menu">
<a href="#" class="menu-btn">
<span></span>
</a>
</div>
</div>
<nav class="links-menu">
<a href="" class="nav-point">About</a>
<a href="" class="nav-point">Services</a>
<a href="" class="nav-point">Calculator</a>
<a href="" class="nav-point">News</a>
<a href="" class="nav-point">Contact</a>
</nav>
<div class="content-sections">Section 1</div>
<div class="content-sections">Section 2</div>
<div class="content-sections">Section 3</div>
<div class="content-sections">Section 4</div>
CSS
body, button {
font-family: 'PT Sans', sans-serif;
color: #455F87;
}
a {
text-decoration: none;
}
.top-panel {
z-index: 30;
position: fixed;
top: 0;
display: flex;
justify-content: space-between;
height: 70px;
width: 100vw;
background-color: #fff;
box-shadow: inset 0 -2px 0 0 #DCE9F5;
}
.left-side {
padding-left: 40px;
}
.left-side {
display: flex;
align-items: center;
}
.left-side h1 a {
position: relative;
font-family: 'Montserrat', sans-serif;
font-size: 1.8rem;
color: #212121;
}
.left-side h1 a span {
font-size: 1.8rem;
font-weight: 300;
}
.top-panel .right-side {
display: none;
}
.hamburger-menu {
display: flex;
align-items: center;
}
.menu-btn {
display: flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
background-color: #FB7DA4;
background-image: linear-gradient(to right, #FBA9A2, #FB7DA4);
border-radius: 50%;
margin-right: 30px;
}
.hamburger-menu .menu-btn span,
.hamburger-menu .menu-btn span::before,
.hamburger-menu .menu-btn span::after {
position: absolute;
display: block;
background-color: #fff;
width: 16px;
height: 2px;
}
.hamburger-menu .menu-btn span::before,
.hamburger-menu .menu-btn span::after {
content: '';
transition: .3s;
}
.hamburger-menu .menu-btn span::before {
transform: translateY(-5px);
}
.hamburger-menu .menu-btn span::after {
transform: translateY(5px);
}
.hamburger-menu .menu-btn-active span {
background: none;
}
.hamburger-menu .menu-btn-active span::before {
transform: rotate(45deg);
}
.hamburger-menu .menu-btn-active span::after {
transform: rotate(-45deg);
}
.links-menu {
z-index: 20;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
position: fixed;
top: -100%;
transition: .5s;
width: 100vw;
height: 75vh;
background-color: #fff;
box-shadow: inset 0 -2px 0 0 #DCE9F5;
overflow-y: auto;
}
.active-links-menu {
z-index: 20;
top: 70px;
}
.links-menu .nav-point {
padding: 21px;
font-weight:...
JavaScript
$('.menu-btn').on('click', function(e) {
e.preventDefault;
$(this).toggleClass('menu-btn-active');
$('.links-menu').toggleClass('active-links-menu');
});