Animated redacted text via Sass for all you confidential needs.
A Pen by Jeremy Paris on CodePen.
Animated redacted text via Sass for all you confidential needs.
A Pen by Jeremy Paris on CodePen.
<h1>Redacted Text Demo</h1> | |
<article class="left"> | |
<h2>Blackout Left</h2> | |
<p> | |
Long ago in a distant land, I, <span class="redacted">Aku</span>, the <span class="redacted">shape shifting</span> master <span class="redacted">of darkness</span>, unleashed an unspeakable <span class="redacted">evil</span>. But a <span class="redacted">foolish</span> samurai warrior wielding a <span class="redacted">magic sword</span> stepped forth to oppose me. | |
</p> | |
<p> | |
Before the final blow was struck, I tore open a portal in time, and flung him into the future <span class="redacted">where my evil is law</span>. Now the fool seeks to return to the past and undo the future that is <span class="redacted">Aku</span>. | |
</p> | |
</article> | |
<article class="right"> | |
<h2>Blackout Right</h2> | |
<p> | |
Many millions of years ago, on <span class="redacted">the planet Cybertron</span>, life existed. But, not life as we know it today. Intelligent <span class="redacted">robots</span>, that could think and feel inhabited the cities. They were called <span class="redacted">Autobots</span> and <span class="redacted">Decepticons</span>. But, the brutal <span class="redacted">Decepticons</span> were driven by a single goal, total domination. They set out to destroy the peace-loving <span class="redacted">Autobots</span>, and a war between the forces of good and evil raged across <span class="redacted">Cybertron</span>, devastating all in its path, and draining <span class="redacted">the planet's</span> once rich sources of energy. The <span class="redacted">Autobots</span>, on the verge of extinction, battle valiantly to survive. | |
</p> | |
</article> | |
<article class="top"> | |
<h2>Blackout Top</h2> | |
<p> | |
<span class="redacted">GI Joe</span> is the codename for <span class="redacted">America</span>'s daring, highly trained special mission force. It's purpose: to defend human freedom against <span class="redacted">Cobra</span> - a ruthless, terrorist organization <span class="redacted">determined to rule the world</span>. | |
</p> | |
</article> | |
<article class="bottom"> | |
<h2>Blackout Bottom</h2> | |
<p> | |
I am <span class="redacted">Adam</span>, Prince of <span class="redacted">Eternia</span>, Defender of the <span class="redacted">Secrets</span> of <span class="redacted">Castle Greyskull</span>. This is <span class="redacted">Kringer</span>, my fearless friend. Fabulous, secret powers were revealed to me the day I held aloft <span class="redacted">my magic sword</span> and said: <span class="redacted">"By the Power of Greyskull!"</span> | |
</p> | |
<p> | |
<span class="redacted">Kringer</span> became the mighty <span class="redacted">BattleCat</span> and I became <span class="redacted">He-Man</span>, the most powerful man in the Universe! Only three others share this secret: <span class="redacted">Our friends the Sorceress</span>, <span class="redacted">Man-at-Arms</span>, and <span class="redacted">Orko</span>. Together we defend <span class="redacted">Castle Greyskull</span> from the evil forces of <span class="redacted">Skeletor</span>. | |
</p> | |
</article> |
@import "compass/css3"; | |
@import url(http://fonts.googleapis.com/css?family=Anonymous+Pro:400,700); | |
$color : ( | |
bg-body: #eeeeee, | |
text: #222222, | |
redacted: #000000 | |
); | |
$redactAnim: 1s ease-out forwards infinite; | |
body { | |
padding: 2em; | |
background: map-get($color, bg-body); | |
color: map-get($color, text); | |
font-family: 'Anonymous Pro'; | |
} | |
h1 { | |
text-align: center; | |
} | |
p { | |
line-height: 1.25em; | |
} | |
.redacted { | |
position: relative; | |
display: inline-block; | |
&:before { | |
content: ""; | |
position: absolute; | |
width: 100%; | |
height: 100%; | |
background-color: map-get($color, redacted); | |
} | |
} | |
.left .redacted:before, .right .redacted:before { | |
@include animation(redact-blackout-width $redactAnim); | |
} | |
.right .redacted:before { | |
right: 0; | |
} | |
.top .redacted:before, .bottom .redacted:before { | |
@include animation(redact-blackout-height $redactAnim); | |
} | |
.bottom .redacted:before { | |
bottom: 0; | |
} | |
@include keyframes(redact-blackout-width){ | |
from { width: 0%; } | |
to{ width: 100%; } | |
} | |
@include keyframes(redact-blackout-height){ | |
from { height: 0%; } | |
to{ height: 100%; } | |
} |