<div class="content">
<div class="marquee">
<div class="marquee_blur" aria-hidden="true">
<p class="marquee_text">Lorem ipsum dolor sit amet!</p>
</div>
<div class="marquee_clear">
<p class="marquee_text">Lorem ipsum dolor sit amet!</p>
</div>
</div>
<p class="text">
I wanted to make a Gooey Marquee type effect, tried a couple of things, and ended up using two layers of text, one with the effect, and a clean one on top so that the text remains readable.
</p>
</div>
@import url("https://fonts.googleapis.com/css?family=Raleway:400,400i,700");
*, *::before, *::after {
padding: 0;
margin: 0 auto;
box-sizing: border-box;
}
body {
font-family: Raleway, sans-serif;
background-color: #000;
color: #fff;
font-size: 24px;
}
.content {
width: 95%;
max-width: 40ch;
padding: 3em 1em;
}
.marquee {
position: relative;
width: 100%;
height: 2em;
font-size: 5em;
display: grid;
place-items: center;
overflow: hidden;
&_text {
position: absolute;
min-width: 100%;
white-space: nowrap;
animation: marquee 16s infinite linear;
@keyframes marquee {
from { translate: 70%; }
to { translate: -70%; }
}
}
&_blur {
position: absolute;
inset: 0;
display: grid;
place-items: center;
background-color: black;
background-image:
linear-gradient(to right, white, 1rem, transparent 50%),
linear-gradient(to left, white, 1rem, transparent 50%);
filter: contrast(15);
p {
filter: blur(0.07em);
}
}
&_clear {
position: absolute;
inset: 0;
display: grid;
place-items: center;
}
}
.text {
margin-block: 2em;
}
View Compiled
This Pen doesn't use any external CSS resources.