Revision Roll
CSSA document sheet rolls over onto itself from bottom to top, revealing a new version with rewritten text segments beneath.
- Tier
- CSS
- Dependencies
- None
- Duration
- 4 s, loops
- Categories
- Transitions and reveals
- Use cases
- Documents and files, Transitions and reveals
- Industries
- Legal, Cross-industry
- Style
- Technical · light stroke
- Set
- redline
- Tags
- scalegeometricfadeone-shot
Companion assets
The same artwork, not animated. Derived from the entry’s own resting state, so it matches exactly.
Code
animation.svg
<svg xmlns="http://www.w3.org/2000/svg" fill="none" aria-hidden="true" class="pulsar pulsar-redline-revision-roll" data-pulsar="redline-revision-roll" viewBox="0 0 160 96"><g stroke="currentColor" stroke-width="1.25" class="page-back" opacity=".4"><rect width="96" height="56" x="32" y="20" rx="3"></rect><line x1="44" x2="116" y1="34" y2="34" stroke-linecap="round"></line><line x1="44" x2="110" y1="46" y2="46" stroke-linecap="round"></line><line x1="44" x2="114" y1="58" y2="58" stroke-linecap="round"></line></g><g class="page-front"><rect width="96" height="56" x="32" y="20" stroke="currentColor" stroke-width="1.5" rx="3"></rect><line x1="44" x2="116" y1="34" y2="34" stroke="var(--pulsar-accent, currentColor)" stroke-linecap="round" stroke-width="1.75"></line><line x1="44" x2="108" y1="46" y2="46" stroke="currentColor" stroke-linecap="round" stroke-width="1.75"></line><line x1="44" x2="112" y1="58" y2="58" stroke="var(--pulsar-accent, currentColor)" stroke-linecap="round" stroke-width="1.75"></line><line x1="44" x2="96" y1="64" y2="64" stroke="currentColor" stroke-linecap="round" stroke-width="1.75" opacity=".5"></line></g><line x1="32" x2="128" y1="20" y2="20" stroke="var(--pulsar-accent, currentColor)" stroke-dasharray="4 3" stroke-width="1.5" class="fold-line"></line></svg>
animation.css
.pulsar-redline-revision-roll {
display: block;
width: 100%;
height: 100%;
}
.pulsar-redline-revision-roll .page-front {
transform-origin: 80px 20px;
animation: redline-revision-roll-flip 4s ease-in-out infinite;
}
.pulsar-redline-revision-roll .fold-line {
animation: redline-revision-roll-fold 4s ease-in-out infinite;
}
.pulsar-redline-revision-roll .page-back {
animation: redline-revision-roll-back-appear 4s ease-in-out infinite;
}
@keyframes redline-revision-roll-flip {
0%,
10% {
transform: scaleY(1);
opacity: 1;
}
40% {
transform: scaleY(0.05);
opacity: 0.3;
}
55%,
85% {
transform: scaleY(1);
opacity: 1;
}
95%,
100% {
transform: scaleY(1);
opacity: 1;
}
}
@keyframes redline-revision-roll-fold {
0%,
10% {
opacity: 0.3;
}
30%,
50% {
opacity: 1;
}
60%,
100% {
opacity: 0;
}
}
@keyframes redline-revision-roll-back-appear {
0%,
30% {
opacity: 0;
}
40%,
55% {
opacity: 0.7;
}
60%,
100% {
opacity: 0;
}
}
@media (prefers-reduced-motion: reduce) {
.pulsar-redline-revision-roll .page-front,
.pulsar-redline-revision-roll .fold-line,
.pulsar-redline-revision-roll .page-back {
animation: none;
transform: none;
opacity: 0.8;
}
}