Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Selected Reading
How to bind an animation to a division element using CSS?
Division elements (<div>) are commonly used for grouping HTML elements, and CSS allows us to bind animations to them for enhanced visual effects. This article demonstrates how to apply animations to division elements using CSS.
Syntax
selector {
animation: animation-name duration timing-function delay iteration-count direction;
}
@keyframes animation-name {
0% { /* initial state */ }
100% { /* final state */ }
}
Method 1: Using @keyframes Animation
The @keyframes method is the most commonly used approach to create animation effects in CSS
<!DOCTYPE html>
<html>
<head>
<style>
.container {
width: 100px;
height: 100px;
background-color: #673c8d;
animation: slideAnimation 2s infinite alternate;
margin: 20px;
}
@keyframes slideAnimation {
0% {
transform: translateX(0);
}
50% {
transform: translateX(100px);
}
100% {
transform: translateX(200px);
}
}
</style>
</head>
<body>
<div class="container"></div>
</body>
</html>
A purple box moves horizontally from left to right (0px ? 100px ? 200px) and then back, repeating infinitely in an alternating pattern.
Method 2: Using Transition with clip-path
The clip-path property combined with transitions creates smooth animation effects by clipping portions of the element
<!DOCTYPE html>
<html>
<head>
<style>
body {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
}
.container {
background-color: #dcdd9e;
width: 300px;
padding: 20px;
text-align: center;
border-radius: 20px;
clip-path: circle(30% at center);
transition: clip-path 1s ease;
cursor: pointer;
}
.container:hover {
clip-path: circle(100% at center);
}
</style>
</head>
<body>
<div class="container">
<h3>Hello World</h3>
<p>This content expands on hover</p>
</div>
</body>
</html>
A light yellow rounded box appears as a small circle. When hovered, it smoothly expands to reveal the full content with a 1-second transition effect.
Animation Properties
| Property | Description | Example Value |
|---|---|---|
animation-duration |
Specifies animation length |
2s, 500ms
|
animation-iteration-count |
Number of repetitions |
infinite, 3
|
animation-direction |
Animation direction |
alternate, reverse
|
animation-timing-function |
Speed curve |
ease, linear
|
Conclusion
CSS animations can be easily bound to division elements using @keyframes for complex sequences or transition with properties like clip-path for simpler effects. These techniques provide powerful ways to enhance user interface interactions and visual appeal.
Advertisements
