Orchestration
Sequencing animations together perfectly brings satisfaction and joy.
This can be achieved in pure CSS.
import "./styles.css";
export default function Orchestration() {
return (
<div className="orchestration">
<h1>Jon Doe</h1>
{COPY.map((copy, index) => (
<p key={copy} style={{ "--stagger": index}}>{copy}</p>
))}
</div>
);
}
const COPY = [
...
]
.orchestration {
padding: 24px 0;
}
.orchestration > * {
animation: enter 0.6s ease both;
animation-delay: calc(var(--delay) * var(--stagger));
--delay: 120ms;
margin: 28px 64px;
}
@keyframes enter {
from {
opacity: 0;
transform: translateY(10px);
}
to {
opacity: 1;
transform: translateY(0);
}
}