Introduction:
In this tutorial, you will learn how to create an elegant card hover effect using HTML and CSS. When a user hovers over a card, the image inside will shrink and move, creating a visually appealing animation. This type of hover effect adds interactivity and professionalism to your website, making it more engaging for users.
Things You Will Learn:
By the end of this tutorial, you will know how to:
- Structure a card layout in HTML.
- Apply CSS for creating a smooth hover effect.
- Animate images and text with CSS transitions.
Video Tutorial:
Here is the video tutorial for this project. If you like the tutorial subscribe to my YouTube channel. I post new projects based on HTML, CSS and Javascript on my channel regularly.
Project Folder Structure:
Now before we move on to actual coding we create a project folder structure. We name the project folder as – “Card Hover Effect”. Within this folder we have code and image files. These files are:
- index.html
- style.css
- image files
HTML:
We begin with the HTML code. Copy the code below and paste it into your HTML document.
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Card Hover Effect</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<section>
<div class="card">
<figure class="card-1">
<img src="billy.webp" />
</figure>
<div class="title">
<h2>Billy</h2>
</div>
<div class="content">
Lorem ipsum dolor sit amet consectetur adipisicing elit. Perferendis
dolore sit soluta dolor officiis. Sapiente veniam harum deserunt atque
iste amet quasi facere porro autem id. Saepe consectetur numquam
</div>
</div>
<div class="card">
<figure class="card-2">
<img src="Grim Reaper.webp" />
</figure>
<div class="title">
<h2>Grim Reaper</h2>
</div>
<div class="content">
Lorem ipsum dolor sit amet consectetur adipisicing elit. Perferendis
dolore sit soluta dolor officiis. Sapiente veniam harum deserunt atque
iste amet quasi facere porro autem id. Saepe consectetur numquam
</div>
</div>
<div class="card">
<figure class="card-3">
<img src="Mandy.webp" />
</figure>
<div class="title">
<h2>Mandy</h2>
</div>
<div class="content">
Lorem ipsum dolor sit amet consectetur adipisicing elit. Perferendis
dolore sit soluta dolor officiis. Sapiente veniam harum deserunt atque
iste amet quasi facere porro autem id. Saepe consectetur numquam
</div>
</div>
</section>
</body>
</html>
Â
CSS:
Next, we style our card using CSS. For this copy, the code provided to you below and paste it into your stylesheet.
* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: "Poppins", sans-serif;
}
body {
height: 90vh;
display: grid;
place-items: center;
background: #212327;
}
.card {
display: inline-block;
border-radius: 20px;
width: 300px;
height: 300px;
position: relative;
cursor: pointer;
margin: 40px 20px;
background-color: #ffffff;
}
figure {
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
transform-origin: 0% 0%;
transition: all 850ms ease-in-out;
z-index: 2;
border-radius: 20px;
background-color: #fda03d;
}
.card:hover figure {
top: -10%;
left: -10%;
transform: scale(0.5);
}
img {
width: 100%;
height: 100%;
object-fit: cover;
border-radius: 32px;
}
.title {
position: absolute;
width: 50%;
height: 50%;
right: 0;
display: grid;
place-items: center;
z-index: 1;
}
.title h2 {
font-size: 16px;
text-align: center;
}
.content {
position: absolute;
bottom: 0;
padding: 16px 25px;
z-index: 1;
color: #505050;
text-align: justify;
line-height: 20px;
}
Â
Conclusion:
This tutorial taught you how to create an interactive card hover effect using HTML and CSS. The hover effect enhances the visual appeal of your website, adding a dynamic user experience. You can easily customize the effect with different image sizes, animations, or colors. Try experimenting with these styles and add your own unique touch!

