Herunterfallende Text Animation mit GSAP Bibliothek (CSS und Javascript Anleitung)

von | Okt 19, 2022 | Design | 2 Kommentare

Diese Art von Animation sieht man immer wieder gerne. Man kann nämlich nicht nur ganze Wörter animieren sondern auch Buchstabe für Buchstabe und zwar einer genialen Javascript Bibliothek genannt GSA.

Ihr denkt jetzt sicher, momentmal das sieht zwar cool aus ist aber vermutlich ziemlich kompliziert zum erstellen, den kann ich beruhigen. Diese Animation ist wirklich sehr einfach und kann jeder selbst einbauen.

In diesem Video zeige ich euch sogar wie das genau geht

Video

HTML

Damit man Texte animieren kann, muss man natürlich mal zuerst welche erstellen.

1
2
3
<header>
        <h1 id="my-text">Eric-Oliver Mächler</h1>
</header>

JS Trennt Div in einzelne Divs

Ihr könnt natürlich alle Buchstaben einzeln trennen mit CSS und einer eigenen Klasse – aber ich habe dafür eine JS Bibliothek verwendet die sehr einfach ist

1
<script src="https://unpkg.com/split-type"></script>

Wenn man sie eingebaut hat, kann man gleich

JS Buchstaben trennen

Damit die Split-Type Bibliothek funktioniert muss man sie natürlich mit dem Text verknüpfen

1
2
3
4
<script>
/* trennt buchstaben in klasse char */
const myText = new SplitType('#my-text')
<script>

Javascript GSAP

Nun müsst ihr natürlich noch die GSAP Javascript Bibliothek einbauen – ich verwende dafür ein CDN Netzwerk

1
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.11.2/gsap.min.js"

GSAP Animation

Nun müsst ihr nur noch die GSAP Animation einbinden

1
2
3
4
5
6
gsap.to('.char', {
            y: 0,
            stagger: 0.05,
            delay: 0.2,
            duration: .1
        })

CSS

Weil ja die GSAP den letzten Zustand definiert, muss man den Startzustand der Animation mit CSS definieren

1
2
3
.char {
    transform: translateY(-150px);
    transition: transform 500ms;

Damit man aber den Startpunkt der Animation nicht sehen kann, legt man ein Clip-Pfad darüber den ich mit der Clippy Websiete definiert habe – das ist so wie man eine Maskenbereich definiert bei einem Videoschneidetool wie Final Cut Pro X oder Adobe Premiere Pro

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
header {
    display: grid;
    place-content: center;
    height: 100vh;
 
}
 
h1 {
    font-size: 7rem;
    text-transform: uppercase;
    font-family: 'Bebas Neue', cursive;
 
    /*
    quadrat https://bennettfeely.com/clippy/
    */
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
 
}
 
 
 
}




2 Kommentare

  1. Lisa

    Nach dieser Text Animation habe ich gesucht und es hat geklappt. Danke für deinen tollen Beitrag und deinen Mehrwert. Mach bitte weiter so Eric. <3
    Liebe Grüße – Lisa

    Antworten
    • Eric-Oliver Mächler

      super – das freut mich sehr – viel spass damit

      Antworten

Einen Kommentar abschicken

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert