Flexbox Crash Course Demonstration
by Keith Rowles • 24/10/2023CSS
Summary
CSS Flexbox Crash Course from Traversy Media - hero section, nav bar and cards.
- Desktop design
- Mobile design
HTML
<nav class="navbar">
<div class="container">
<div class="logo">Flexbox</div>
<ul class="nav">
<li><a href="">Home</a></li>
<li><a href="">About</a></li>
<li><a href="">Contact</a></li>
</ul>
</div>
</nav>
<header class="header">
<div class="container">
<div>
<h1>Flexbox Crash Course</h1>
<p>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam,
animi. Lorem ipsum dolor sit amet consectetur adipisicing elit.
Quisquam, animi.
</p>
</div>
<img src="grid.svg" alt="Grid" />
</div>
</header>
<section class="boxes">
<div class="container">
<div class="box">
<h2><i class="fas fa-arrows-alt-v"></i>Alignment and Space</h2>
<p>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fugiat,
accusantium!
</p>
</div>
<div class="box">
<h2><i class="fas fa-arrows-alt-v"></i>Responsive Design</h2>
<p>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fugiat,
accusantium!
</p>
</div>
<div class="box">
<h2><i class="fas fa-arrows-alt-v"></i>Tricky Positioning</h2>
<p>
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fugiat,
accusantium!
</p>
</div>
</div>
</section>
CSS
Add the css.
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@500;600;700&family=Poppins:wght@400;700&display=swap');
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
body {
font-family: 'Poppins', sans-serif;
font-size: 16px;
line-height: 1.5;
color: #333;
background: #a1c3ff;
}
img {
max-width: 100%;
}
h1,
h2 {
margin-bottom: 15px;
}
ul {
list-style-type: none;
}
.container {
max-width: 1100px;
margin: 0 auto;
padding: 0 30px;
}
.navbar {
background: #3474e6;
color: white;
height: 60px;
}
.navbar .logo {
font-size: x-large;
font-weight: bold;
}
.navbar a {
color: white;
text-decoration: none;
font-size: 18px;
font-weight: bold;
}
.navbar a:hover {
color: lightblue;
}
.navbar .container {
display: flex;
justify-content: space-between;
align-items: center;
height: 100%;
}
.navbar ul {
display: flex;
}
.navbar ul li {
margin-left: 20px;
}
.header {
background-color: #0151cc;
color: white;
min-height: 400px;
}
.header h1 {
font-size: 3rem;
font-weight: bold;
line-height: 1.2;
}
.header img {
max-width: 400px;
}
.header .container {
display: flex;
align-items: center;
justify-content: space-between;
}
.boxes .container {
display: flex;
justify-content: space-between;
}
.box {
flex: 1;
background: #0a51cc;
color: white;
border-radius: 10px;
margin: 20px 10px;
box-shadow: 0 3px 5px rgba(0, 0, 0, 0.6);
padding: 15px;
}
.box i {
margin-right: 10px;
}
@media (max-width: 768px) {
.header .container {
flex-direction: column;
padding-top: 20px;
text-align: center;
}
.boxes .container {
display: block;
text-align: center;
}
}
Tech and Tools
- CSS Flexbox
- HTML
- Media Query
- cPanel Hosting
Demo
Open demo on my web server. Clicking the link will open up a new window.
Link to Demo