Letter Wave

Entrance & Kinetic · Animated · pure CSS

Letters bob in a continuous sine wave, each offset by its index for a flowing ripple. Lively kinetic typography (per-letter markup).

L e t t e r   W a v e

CSS

/* Letter Wave — generated with TEXT-FX
 * HTML: each character is wrapped in a <span> — see the HTML export.
 * Font: 'Major Mono Display', monospace (load from Google Fonts).
 */

.text-effect {
  font-family: 'Major Mono Display', monospace;
  font-weight: 400;
  letter-spacing: 8px;
  text-transform: none;
}

.text-effect {
  color: hsl(181 70% 72%);
  white-space: pre;
}
.text-effect .fx-ch {
  display: inline-block;
  will-change: transform;
  animation:
    text-effect-wave 1.7s ease-in-out infinite;
  animation-delay: calc(var(--i) * -0.1s);
}

@keyframes text-effect-wave {
  0%, 100% { transform: translateY(23px); }
  50% { transform: translateY(-23px); }
}

HTML

This effect needs the markup below (per-letter spans, SVG defs, or a data-text attribute).

<style>
.text-effect {
  font-family: 'Major Mono Display', monospace;
  font-weight: 400;
  letter-spacing: 8px;
  text-transform: none;
}

.text-effect {
  color: hsl(181 70% 72%);
  white-space: pre;
}
.text-effect .fx-ch {
  display: inline-block;
  will-change: transform;
  animation:
    text-effect-wave 1.7s ease-in-out infinite;
  animation-delay: calc(var(--i) * -0.1s);
}

@keyframes text-effect-wave {
  0%, 100% { transform: translateY(23px); }
  50% { transform: translateY(-23px); }
}
</style>

<div class="text-effect">
  <span class="fx-ch" style="--i:0;--n:9;--rev:8;--mid:4">Y</span>
  <span class="fx-ch" style="--i:1;--n:9;--rev:7;--mid:4">o</span>
  <span class="fx-ch" style="--i:2;--n:9;--rev:6;--mid:4">u</span>
  <span class="fx-ch" style="--i:3;--n:9;--rev:5;--mid:4">r</span>
  <span class="fx-ch" style="--i:4;--n:9;--rev:4;--mid:4"> </span>
  <span class="fx-ch" style="--i:5;--n:9;--rev:3;--mid:4">t</span>
  <span class="fx-ch" style="--i:6;--n:9;--rev:2;--mid:4">e</span>
  <span class="fx-ch" style="--i:7;--n:9;--rev:1;--mid:4">x</span>
  <span class="fx-ch" style="--i:8;--n:9;--rev:0;--mid:4">t</span>
</div>
Category
Entrance & Kinetic
Type
Animated
Browser support
All modern browsers
Capabilities
perLetter

Related Entrance & Kinetic effects