JSFiddle - React, Tailwind, and code Playground
by Pratik Galoria
HTML
<div class="container">
<div class="main">
<div class="header">
</div>
<div class="fa-wrapper">
</div>
<div class="content">
<div class="c-header">
<div class="ch-title">
Latest news and articles
</div>
<div class="ch-filter">
filter
</div>
</div>
<div class="c-wrapper">
<div class="cw-article">
<div class="cwa-image">
</div>
<div class="cwa-desc">
</div>
</div>
<div class="cw-article">
<div class="cwa-image">
</div>
<div class="cwa-desc">
</div>
</div>
<div class="cw-article">
<div class="cwa-image">
</div>
<div class="cwa-desc">
</div>
</div>
<div class="cw-article">
<div class="cwa-image">
</div>
<div class="cwa-desc">
</div>
</div>
</div>
<div class="c-footer">
<button class="btn-load-more">
Load more articles
</button>
</div>
</div>
<div class="footer">
</div>
</div>
</div>
CSS
* {
margin: 0;
}
.container {
position: absolute;
height: 100vh;
top: 0;
left: 0;
right: 0;
overflow-x: hidden;
overflow-y: auto;
display: flex;
flex-direction: column;
}
.main {
background-color: #f4f6fc;
display: flex;
flex: 1 0 auto;
flex-direction: column;
}
.header {
background-color: #0d1a33;
flex: 0 0 90px;
}
.fa-wrapper {
background-color: rgba(30, 30, 30, 0.5);
flex: 0 0 390px;
}
.content {
margin: 100px 100px;
display: flex;
flex-direction: column;
flex: 1 0 auto;
}
.c-header {
display: flex;
align-items: center;
margin-bottom: 40px;
}
.ch-title {
flex: 1 1 auto;
font-size: 24px;
}
.ch-filter {
margin-right: 10px;
}
.c-wrapper {
display: flex;
flex-flow: row wrap;
justify-content: space-between;
}
.cw-article {
display: flex;
flex-direction: column;
margin-bottom: 100px;
margin-right: 10px;
flex: 1 1 300px;
}
.cwa-image {
background-color: grey;
flex: 0 0 200px;
}
.cwa-desc {
background-color: white;
border-radius: 2px;
box-shadow: inset 0 1px 0 0 #ececec;
flex: 0 0 160px;
}
.c-footer {
display: flex;
justify-content: center;
align-items: center;
flex: 1 0 auto;
}
.btn-load-more {
width: 280px;
height: 50px;
border-radius: 3px;
box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.1);
background-image: linear-gradient(100deg, #359acc, #b535cc);
font-size: 18px;
font-weight: bold;
font-style: normal;
font-stretch: normal;
line-height: 1.44;
letter-spacing: normal;
text-align: center;
color: #ffffff;
}
.footer {
background-color: #0d1a33;
flex: 0 0 785px;
}
@media (max-width: 640px), (max-height: 480px) {
.header {
flex-basis: 76px;
}
.fa-wrapper {
flex-basis: 360px;
}
.c-wrapper {
flex-flow: column nowrap;
}
.cw-article {
box-shadow: 0 20px 30px 0 rgba(0, 0, 0, 0.1);
flex-direction: row;
margin-bottom: 10px;
flex: 1 0 100px;
}
.cwa-image {
flex-basis: 87px;
}
...