Open In App

Text Animation with changing the color of the text using HTML and CSS

Text animation is the creation of beautiful and colorful letters, words, and paragraphs with a decorative movable effect. The movement can be seen in some fashion within the area or across the screen following some regular pattern.

The @keyframes in CSS allows defining a series of animations at specific points during an animation sequence. In this styles are declared for different stages of the animation, enabling dynamic transitions and effects.



Syntax for @keyframes:

@keyframes animationname {keyframes-selector {css-styles;}} 

Approach:

Example:




<!DOCTYPE html>
<html lang="en">
 
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, initial-scale=1.0">
    <title>Text Animation</title>
    <style>
        * {
            padding: 0;
            margin: 0;
            font-family: sans-serif;
        }
 
        body {
            background: yellowgreen;
        }
 
        .container {
            text-align: center;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 100%;
        }
 
        .container span {
            display: block;
        }
 
        .text1 {
            color: white;
            font-size: 70px;
            font-weight: 700;
            letter-spacing: 8px;
            margin-bottom: 20px;
            background: yellowgreen;
            position: relative;
            animation: text 3s 1;
        }
 
        .text2 {
            font-size: 30px;
            color: darkgreen;
            font-family: Georgia, serif;
        }
 
        @keyframes text {
            0% {
                color: black;
                margin-bottom: -40px;
            }
 
            30% {
                letter-spacing: 25px;
                margin-bottom: -40px;
            }
 
            85% {
                letter-spacing: 8px;
                margin-bottom: -40px;
            }
        }
    </style>
</head>
 
<body>
    <div class="container">
        <div class="row">
            <span class="text1">Hello!</span>
            <span class="text2">GeeksforGeeks</span>
        </div>
    </div>
</body>
 
</html>

Output:




Article Tags :