¿Cómo crear un efecto de animación 3D de texto saltando usando CSS?

En este artículo, aprenderá a implementar el efecto de animación Jumping Texts utilizando HTML y CSS simples. HTML se usa para crear la estructura de la página y CSS se usa para establecer el estilo.

Código HTML: En esta sección, diseñaremos la estructura básica del cuerpo.

<!DOCTYPE html>
<html lang="en">
  
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content=
      "width=device-width, initial-scale=1.0">
    <title>Text Jumping effect</title>
    <link rel="stylesheet" href="style.css">
</head>
  
<body>
    <h1>
        <span>G</span>
        <span>e</span>
        <span>e</span>
        <span>k</span>
        <span>s</span>
        <span>f</span>
        <span>o</span>
        <span>r</span>
        <span>G</span>
        <span>e</span>
        <span>e</span>
        <span>k</span>
        <span>s</span>
    </h1>
</body>
  
</html>

Código CSS: en esta sección, usaremos algunas propiedades CSS para diseñar el texto de salto .

La propiedad CSS text-shadow se aplica para crear sombras en el texto. Acepta una lista de sombras separadas por comas. La lista se aplicará al texto para sus decoraciones. Alguna combinación de compensaciones X e Y del elemento describe cada una de las sombras. Estamos usando @keyframes para el código de animación. La animación se crea cambiando gradualmente de un conjunto de CSS a otro. El cambio de todos los estilos ocurre en porcentaje o el cambio de estilo ocurre usando las palabras clave «desde» y «hasta», que es lo mismo que 0% y 100%. El conjunto de CSS se puede cambiar muchas veces.

Código CSS:

<style>
    html, body {
        width: 100%;
        height: 100%;
        background: black;
        -webkit-font-smoothing: antialiased;
        display: flex;
        justify-content: center;
        align-items: center;
    }
  
    h1 {
        height: 100px;
    }
  
    h1 span {
        position: relative;
        top: 20px;
        display: inline-block;
        animation: bounce .3s ease infinite alternate;
        font-family: 'Titan One'cursive;
        font-size: 80px;
        color: #fff;
        text-shadow: 0 1px 0 green,
            0 2px 0 green,
            0 3px 0 green,
            0 4px 0 green,
            0 5px 0 green,
            0 6px 0 transparent,
            0 7px 0 transparent,
            0 8px 0 transparent,
            0 9px 0 transparent,
            0 10px 10px rgba(0, 0, 0, 0.4);
    }
  
    h1 span:nth-child(2) {
        animation-delay: .1s;
    }
  
    h1 span:nth-child(3) {
        animation-delay: .2s;
    }
  
    h1 span:nth-child(4) {
        animation-delay: .3s;
    }
  
    h1 span:nth-child(5) {
        animation-delay: .4s;
    }
  
    h1 span:nth-child(6) {
        animation-delay: .5s;
    }
  
    h1 span:nth-child(7) {
        animation-delay: .6s;
    }
  
    h1 span:nth-child(8) {
        animation-delay: .7s;
    }
  
    @keyframes bounce {
        100% {
            top: -20px;
            text-shadow: 0 1px 0 #CCC,
                0 2px 0 #CCC,
                0 3px 0 #CCC,
                0 4px 0 #CCC,
                0 5px 0 #CCC,
                0 6px 0 #CCC,
                0 7px 0 #CCC,
                0 8px 0 #CCC,
                0 9px 0 #CCC,
                0 50px 25px rgba(0, 0, 0, 0.2);
        }
    }
</style>

Código completo: es la combinación de las dos secciones de código anteriores.

<!DOCTYPE html>
<html lang="en">
  
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content=
        "width=device-width, initial-scale=1.0">
  
    <title>Text Jumping effect</title>
  
    <style>
        html, body {
            width: 100%;
            height: 100%;
            background: black;
            -webkit-font-smoothing: antialiased;
            display: flex;
            justify-content: center;
            align-items: center;
        }
  
        h1 {
            height: 100px;
        }
  
        h1 span {
            position: relative;
            top: 20px;
            display: inline-block;
            animation: bounce .3s ease infinite alternate;
            font-family: 'Titan One'cursive;
            font-size: 80px;
            color: #fff;
            text-shadow: 0 1px 0 green,
                0 2px 0 green,
                0 3px 0 green,
                0 4px 0 green,
                0 5px 0 green,
                0 6px 0 transparent,
                0 7px 0 transparent,
                0 8px 0 transparent,
                0 9px 0 transparent,
                0 10px 10px rgba(0, 0, 0, 0.4);
        }
  
        h1 span:nth-child(2) {
            animation-delay: .1s;
        }
  
        h1 span:nth-child(3) {
            animation-delay: .2s;
        }
  
        h1 span:nth-child(4) {
            animation-delay: .3s;
        }
  
        h1 span:nth-child(5) {
            animation-delay: .4s;
        }
  
        h1 span:nth-child(6) {
            animation-delay: .5s;
        }
  
        h1 span:nth-child(7) {
            animation-delay: .6s;
        }
  
        h1 span:nth-child(8) {
            animation-delay: .7s;
        }
  
        @keyframes bounce {
            100% {
                top: -20px;
                text-shadow: 0 1px 0 #CCC,
                    0 2px 0 #CCC,
                    0 3px 0 #CCC,
                    0 4px 0 #CCC,
                    0 5px 0 #CCC,
                    0 6px 0 #CCC,
                    0 7px 0 #CCC,
                    0 8px 0 #CCC,
                    0 9px 0 #CCC,
                    0 50px 25px rgba(0, 0, 0, 0.2);
            }
        }
    </style>
</head>
  
<body>
    <h1>
        <span>G</span>
        <span>e</span>
        <span>e</span>
        <span>k</span>
        <span>s</span>
        <span>f</span>
        <span>o</span>
        <span>r</span>
        <span>G</span>
        <span>e</span>
        <span>e</span>
        <span>k</span>
        <span>s</span>
    </h1>
</body>
  
</html>

Producción:

Publicación traducida automáticamente

Artículo escrito por nehaahlawat y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *