Vissza az animációkhoz
Szöveganimációk

Betűnként felépülő cím

Élő előnézet – az animáció teljes méretben.

Élő előnézet
HTML · CSS · JS
HTML
<div class="we-text-card">
    <h2 class="we-text-build">
        <span>Fedezd</span>
        <span>fel</span>
        <span>a</span>
        <span>világot</span>
    </h2>
</div>
CSS
.we-text-card {
    display: inline-block;

    padding: 28px 38px;

    background: #f4f1e9;

    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 18px;

    box-shadow:
        0 18px 45px rgba(0, 0, 0, .22);

    overflow: hidden;
}

.we-text-build {
    display: flex;
    flex-wrap: wrap;
    gap: .28em;

    margin: 0;

    color: #111111;

    font-family: "Bodoni Moda", Georgia, serif;
    font-size: clamp(36px, 6vw, 72px);
    font-weight: 500;
    line-height: 1.05;
    letter-spacing: .01em;
}

.we-text-build span {
    display: inline-block;

    opacity: 0;

    transform:
        translateY(70px)
        rotateX(-65deg);

    filter: blur(10px);

    animation:
        weTextBuild 1s cubic-bezier(.22, 1, .36, 1) forwards;
}

.we-text-build span:nth-child(1) {
    animation-delay: .25s;
}

.we-text-build span:nth-child(2) {
    animation-delay: .42s;
}

.we-text-build span:nth-child(3) {
    animation-delay: .59s;
}

.we-text-build span:nth-child(4) {
    animation-delay: .76s;
}

@keyframes weTextBuild {
    0% {
        opacity: 0;
        transform:
            translateY(70px)
            rotateX(-65deg);
        filter: blur(10px);
    }

    55% {
        opacity: 1;
        filter: blur(2px);
    }

    100% {
        opacity: 1;
        transform:
            translateY(0)
            rotateX(0);
        filter: blur(0);
    }
}
JavaScript
Ehhez az animációhoz nincs külön JavaScript.