<h1 class="fancy-wipe">
<span class="text">
Transference
</span>
<span class="wipe-in">
Transference
</span>
<span class="blur-in">
Transference
</span>
</h1>
<h1 class="fancy-wipe" style="--colors: linear-gradient(90deg, #4ec6f3, #e10fb4)">
<span class="text">
Serendipitous
</span>
<span class="wipe-in">
Serendipitous
</span>
<span class="blur-in">
Serendipitous
</span>
</h1>
<h1 class="fancy-wipe" style="--colors: linear-gradient(
90deg,
rgba(255, 0, 0, 1) 0%,
rgba(255, 154, 0, 1) 10%,
rgba(208, 222, 33, 1) 20%,
rgba(79, 220, 74, 1) 30%,
rgba(63, 218, 216, 1) 40%,
rgba(47, 201, 226, 1) 50%,
rgba(28, 127, 238, 1) 60%,
rgba(95, 21, 242, 1) 70%,
rgba(186, 12, 248, 1) 80%,
rgba(251, 7, 217, 1) 90%,
rgba(255, 0, 0, 1) 100%
);">
<span class="text">
Ostentatious
</span>
<span class="wipe-in">
Ostentatious
</span>
<span class="blur-in">
Ostentatious
</span>
</h1>
html {
width: 100%;
height: 100%;
background: #222;
color: white;
}
body {
font-family: Raleway, sans-serif;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
width: 100%;
height: 100%;
padding: 0;
margin: 0;
}
.fancy-wipe {
margin: 0;
font-weight: 900;
font-size: 6rem;
position: relative;
--duration: 2.5s;
--easing: cubic-bezier(0.45, 0, 0.55, 1);
--colors: linear-gradient(
90deg,
#fff89a,
#cdf2ca,
#a2cdcd,
#d1e8e4,
#cab8ff,
#ff7878,
#ffc898
);
}
.text {
display: block;
padding: 2rem;
color: white;
animation: wipe-in var(--duration) infinite var(--easing);
mask: linear-gradient(to right, white, white 45%, black, 55%, black);
mask-composite: exclude;
mask-mode: luminance;
mask-size: 300% 100%;
mask-position: 100% 0px;
}
.wipe-in {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
padding: 2rem;
background-image: var(--colors);
background-clip: text;
text-fill-color: transparent;
animation: wipe-in var(--duration) infinite var(--easing);
mask: linear-gradient(to right, black, black 45%, white 50%, black 52.5%, black);
mask-composite: exclude;
mask-mode: luminance;
mask-size: 300% 100%;
mask-position: 100% 0px;
}
.blur-in {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
padding: 2rem;
background-image: var(--colors);
background-clip: text;
text-fill-color: transparent;
animation: wipe-in var(--duration) infinite var(--easing);
mask: linear-gradient(to right, black, black 45%, white 52.5%, black 55%, black);
mask-composite: exclude;
mask-mode: luminance;
mask-size: 300% 100%;
mask-position: 100% 0px;
filter: blur(10px);
}
@keyframes wipe-in {
100% {
mask-position: 0px 0px;
}
}
This Pen doesn't use any external JavaScript resources.