JSFiddle - React, Tailwind, and code Playground
by Dejan Munjiza
HTML
<div id="header">
<div class="container">
<div class="header-wrapper">
<!-- Menu box 1 -->
<div class="menu-box menu-one">
<div class="first-item">Menu One</div>
<div class="menu-items">
<ul>
<li><a href="#">Item One</a></li>
<li><a href="#">Item Two</a></li>
<li><a href="#">Item Three</a></li>
</ul>
</div>
</div>
<!-- Menu box 2 -->
<div class="menu-box menu-two">
<div class="first-item">Menu Two</div>
<div class="menu-items">
<ul>
<li><a href="#">Item One</a></li>
<li><a href="#">Item Two</a></li>
<li><a href="#">Item Three</a></li>
<li><a href="#">Item Four</a></li>
<li><a href="#">Item Five</a></li>
<li><a href="#">Item Six</a></li>
</ul>
</div>
</div>
<!-- Menu box 3 -->
<div class="menu-box menu-three">
<div class="first-item">Menu Three</div>
<div class="menu-items">
<ul>
<li><a href="#">Item One</a></li>
<li><a href="#">Item Two</a></li>
</ul>
</div>
</div>
<!-- Menu box 4 -->
<div class="menu-box menu-four">
<div class="first-item">Menu Four</div>
<div class="menu-items">
<ul>
<li><a href="#">Item One</a></li>
<li><a href="#">Item Two</a></li>
<li><a href="#">Item Three</a></li>
</ul>
</div>
</div>
<!-- Menu box 5 -->
<div class="menu-box menu-five">
<div class="first-item">Menu Five</div>
<div class="menu-items">
<ul>
<li><a href="#">Item One</a></li>
<li><a href="#">Item Two</a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
<!-- Main content -->
<!-- Heading -->
<section id="heading">
<div class="container heading">
<div...
CSS
body, html {
padding: 0;
margin: 0;
}
body * {
box-sizing: border-box;
}
#header {
position: absolute;
top: 0;
left: 0;
width: 100%;
background: #d2d2d2;
z-index: 999;
}
.container {
width: 100%;
max-width: 1890px;
margin: 0 auto;
padding: 20px;
}
.header-wrapper {
display: flex;
flex-direction: row;
align-items: flex-start;
justify-content: space-between;
}
.menu-box {
flex: 0 0 15%;
display: flex;
flex-direction: column;
}
.menu-items {
display: none;
float: left;
padding-top: 20px;
}
.menu-items ul {
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
}
.menu-items ul li {
list-style: none;
}
.menu-items ul li a {
float: left;
padding: 10px 0;
text-decoration: none;
color: white;
}
/* Sections and content */
section {
float: left;
width: 100%;
}
#heading {
margin-top: 58px;
}
#heading .heading {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
#heading .heading * {
text-align: center;
}
#heading .heading .title {
width: 100%;
max-width: 800px;
font-size: 48px;
padding-bottom: 200px;
}
/* Grid */
.grid-container {
display: flex;
flex-direction: column;
justify-content: flex-start;
float: left;
width: 100%;
}
.grid-row {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.gi-one {
flex: 0 0 24%;
margin: 0.5%;
background: #d2d2d2;
}
.gi-two {
flex: 0 0 49%;
margin: 0.5%;
background: #d6d6d6;
}
@media screen and (max-width: 960px) {
.grid-row {
flex-direction: column;
}
.gi-one,
.gi-two {
flex: 0 0 98%;
width: 98%;
margin: 1%;
}
}
JavaScript
$( '.first-item' ).mouseover( function(){
$( '.menu-items' ).slideDown();
});
$( '#header' ).mouseleave( function(){
$( '.menu-items' ).slideUp();
});