JSFiddle - React, Tailwind, and code Playground
HTML
<div class="css3-notification">
<p>Hi, this is a notification and it bounces.</p>
</div>
CSS
.css3-notification {
font-size: .8em;
text-align: center;
padding: 10px;
background-color: #111;
color: #fff;
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, .3);
text-transform: uppercase;
position: relative;
font-weight: bold;
-webkit-animation: bounce 1.2s ease-out;
-moz-animation: bounce 800ms ease-out;
-o-animation: bounce 800ms ease-out;
animation: bounce 1.2s ease-out;
}
/* Webkit, Chrome and Safari */
@-webkit-keyframes bounce {
0% {
-webkit-transform:translateY(-100%);
}
5% {
-webkit-transform:translateY(-100%);
}
15% {
-webkit-transform:translateY(0);
padding: 4px auto;
}
20% {
-webkit-transform:translateY(-80%);
}
25% {
-webkit-transform:translateY(0%);
padding: 4px auto;
}
30% {
-webkit-transform:translateY(-70%);
}
35% {
-webkit-transform:translateY(0%);
padding: 5px auto;
}
40% {
-webkit-transform:translateY(-60%);
}
45% {
-webkit-transform:translateY(0%);
padding: 5px auto;
}
50% {
-webkit-transform:translateY(-50%);
}
55% {
-webkit-transform:translateY(0%);
padding: 6px auto;
}
60% {
-webkit-transform:translateY(-30%);
}
65% {
-webkit-transform:translateY(0%);
padding: 6px auto;
}
70% {
-webkit-transform:translateY(-15%);
}
75% {
-webkit-transform:translateY(0);
padding: 8px auto;
}
80% {
-webkit-transform:translateY(-10%);
}
85% {
-webkit-transform:translateY(0);
padding: 8px auto;
}
90% {
-webkit-transform:translateY(-5%);
}
95% {
-webkit-transform:translateY(0);
padding: 10px;
}
100% {
-webkit-transform:translateY(0);
padding: 10px;
}
}
/* Mozilla Firefox 15 below */
@-moz-keyframes bounce {
0% {
-moz-transform:translateY(-100%);
opacity: 0;
}
5% {
-moz-transform:translateY(-100%);
opacity: 0;
}
15% {
-moz-transform:translateY(0);
padding-bottom: 5px;
}
30% {
-moz-transform:translateY(-50%);
}
40% {
-moz-transform:translateY(0%);
padding-bottom: 6px;
}
50% {
...