JSFiddle - React, Tailwind, and code Playground
by justinwinter
HTML
<div>
<h1 class="animate-reveal animate-first">A pure CSS onload animation that plays once!</h1>
<h1 class="animate-reveal animate-second">Apply it to multiple elements, with differing delays!</h1>
<h1 class="animate-reveal animate-third">Amazing!!!</h1>
</div>
CSS
h1 {
margin: 0 0 .5em;
padding: 0;
}
.animate-reveal {
font: bold 1.5em sans-serif;
text-transform: uppercase;
letter-spacing: 2px;
opacity: 0;
-webkit-animation: reveal 1s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
-moz-animation: reveal 1s ease-in 1 normal forwards;
-o-animation: reveal 1s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
animation: reveal 1s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
}
.animate-first {
-webkit-animation-delay: 0;
-moz-animation-delay: 0;
-o-animation-delay: 0;
animation-delay: 0;
}
.animate-second {
-webkit-animation-delay: 500ms;
-moz-animation-delay: 500ms;
-o-animation-delay: 500ms;
animation-delay: 500ms;
}
.animate-third {
-webkit-animation-delay: 1s;
-moz-animation-delay: 1s;
-o-animation-delay: 1s;
animation-delay: 1s;
}
@-webkit-keyframes reveal {
0% {
opacity: 0;
-webkit-transform: translateY(100%);
-moz-transform: translateY(100%);
-o-transform: translateY(100%);
transform: translateY(100%);
}
100% {
opacity: 1;
-webkit-transform: translateY(0);
-moz-transform: translateY(0);
-o-transform: translateY(0);
transform: translateY(0);
}
}
@-moz-keyframes reveal {
0% {
opacity: 0;
-webkit-transform: translateY(100%);
-moz-transform: translateY(100%);
-o-transform: translateY(100%);
transform: translateY(100%);
}
100% {
opacity: 1;
-webkit-transform: translateY(0);
-moz-transform: translateY(0);
-o-transform: translateY(0);
transform: translateY(0);
}
}
@-o-keyframes reveal {
0% {
opacity: 0;
-webkit-transform: translateY(100%);
-moz-transform: translateY(100%);
-o-transform: translateY(100%);
transform: translateY(100%);
}
100% {
opacity: 1;
-webkit-transform: translateY(0);
-moz-transform:...