Order summary card design using HTML | CSS
Order summary component is a real life project and a solution to the
challenge inspired from
Frontend mentor. Frontend mentor is a best place to take challenges and practice to
build your coding skills by making real life based projects.
Please follow the below code and build something awesome 😎.
HTML Code
filename - index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" sizes="32x32" href="./images/favicon-32x32.png">
<title>Frontend Mentor | Order summary card</title>
<!-- google font -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Red+Hat+Display:wght@500;700;900&display=swap" rel="stylesheet">
<!-- external css styling -->
<link rel="stylesheet" href="./style.css">
</head>
<body>
<div class="card-container">
<header class="card-header">
<img src="./images/illustration-hero.svg" alt="hero">
</header>
<main class="card-main">
<h1 class="card-title">Order Summary</h1>
<p class="card-desc">
You can now listen to millions of songs, audiobooks and podcasts on any device anywhere you like!
</p>
<div class="plan-container">
<div class="icon">
<img src="./images/icon-music.svg" alt="music-icon">
</div>
<div class="plan-desc">
<h4>Annual Plan</h4>
<p>$55.99/year</p>
</div>
<a href="#">Change</a>
</div>
<div class="button-container">
<button class="btn btn-primary">Proceed to Payment</button>
<button class="btn">Cancel Order</button>
</div>
</main>
</div>
</body>
</html>
CSS Code
filename - style.css
/* initializing variables */
:root {
--Pale-blue: hsl(225, 100%, 94%);
--Bright-blue: hsl(245, 75%, 52%);
--Very-pale-blue: hsl(225, 100%, 98%);
--Desaturated-blue: hsl(224, 23%, 55%);
--Dark-blue: hsl(223, 47%, 23%);
}
/* global default styling */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
/* body styling */
body {
min-height: 100vh;
background-image: url(./images/pattern-background-desktop.svg);
background-repeat: no-repeat;
background-size: auto;
background-size: contain;
background-position: top center;
background-color: var(--Pale-blue);
font-family: 'Red Hat Display', sans-serif;
display: flex;
align-items: center;
justify-content: center;
}
p,
.btn {
color: var(--Desaturated-blue);
}
.card-container {
position: relative;
width: 450px;
max-width: 94%;
border-radius: 1rem;
overflow: hidden;
background: #fff;
text-align: center;
}
.card-main {
padding: 2rem;
display: flex;
flex-direction: column;
align-items: center;
}
.card-title {
color: var(--Dark-blue);
font-weight: 900;
}
.card-desc {
width: 90%;
margin-top: 1rem;
}
.plan-container {
width: 100%;
padding: 1rem;
margin: 1.5rem 0;
display: flex;
align-items: center;
background: var(--Very-pale-blue);
border-radius: 1rem;
}
.plan-desc {
margin-left: 1rem;
}
.plan-container a {
margin-left: auto;
}
.button-container {
width: 100%;
}
/* default button styling */
.btn {
display: block;
width: 100%;
background: none;
border: none;
outline: none;
margin: .75rem 0;
padding: .75rem;
font-family: 'Red Hat Display', sans-serif;
font-weight: 700;
letter-spacing: .75px;
cursor: pointer;
}
.btn-primary {
background: var(--Bright-blue);
color: #fff;
border-radius: 8px;
box-shadow: 0 4px 20px rgba(0, 0, 0, .3);
}
/* end css */
Sources
- Visit this challenge on Frontend mentor.
- Visit my profile on Github for images and more.
- Preview Live site - click here
Code by - AltafAlam Shaikh
Topic covered - flexbox, responsive design in css
Technology used - Html, Css
Font used - Red Hat Display
That is all! Happy coding 🎉.