Creative Titel Animation mit HTML und CSS

von Eric-Oliver Mächler | Aug. 11, 2026 | Design | 0 Kommentare

Schlagwörter: CSS - HTML

Inhaltsverzeichnis

Wenn man eine neue Hero-Sektion bauen muss, dann braucht man oft eine Titel-Animation.

Heute zeige ich euch, wie ihr eine eher verspielte Titel-Animation mit HTML und CSS erstellen könnt.

Normale und langweilige Titel gibt es zur Genüge, diese Art Titel entlocken einem Kunden aber kein WOW mehr aus dem Mund. Heute muss man schon tiefer in die Trickkiste greifen.

Wie wäre es also, wenn man in so einem Titel alle Buchstaben einzeln animieren könnte?

Ich zeige euch heute, wie das geht und was ihr da alles bauen könnt.

Video

HTML

<div class="container">
      <span class="letter">H</span>
      <span class="letter">A</span>
      <span class="letter">L</span>
      <span class="letter">L</span>
      <span class="letter">O</span>
    </div>

CSS

:root {
  --bg: #000;
  --farbe: #c4b000;
  --rand: #fff;
  --breite: 1px;
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  background: var(--bg);
  overflow: hidden;
}

.container {
  position: relative;
  display: flex;
  font-family: "Chewy", system-ui;
  font-size: 12rem;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 2px;
}

.letter {
  position: relative;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke: var(--breite) var(--rand);
  background: repeating-linear-gradient(90deg, var(--bg) 0px, var(--bg) 5px, var(--farbe) 5px, var(--farbe) 10px);
  background-size: 20px 20px;
  background-clip: text;
  -webkit-background-clip: text;

  animation: animationBuchstabe 1000ms linear infinite, bewegung 1500ms ease-in-out infinite;
  will-change: background-position, transform;
}

@keyframes animationBuchstabe {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 20px 20px;
  }
}

@keyframes bewegung {
  0%,
  100% {
    transform: translateX(0) translateY(0);
  }
  40% {
    transform: translateX(-6px) translateY(6px);
  }
  50% {
    transform: translateX(6px) translateY(-6px);
  }
}

.letter:nth-child(1) {
  animation-delay: 0ms, 0ms;
}
.letter:nth-child(2) {
  animation-delay: 0ms, 100ms;
}
.letter:nth-child(3) {
  animation-delay: 0ms, 200ms;
}
.letter:nth-child(4) {
  animation-delay: 0ms, 300ms;
}
.letter:nth-child(5) {
  animation-delay: 0ms, 400ms;
}

0 Kommentare

Kommentar Schreiben

Du kannst auf Fediverse-Profile verlinken, indem du fl:@benutzername in deinem Kommentar eingibst.

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