Wealth Management

Sponsored

Saturday, 29 November 2025

Earth

Yosemite National Park, meadow at the base of El Capitan

Animated 3

 


<head>

<style>

@import "https://unpkg.com/open-props@1.6.17/easings.min.css";


@keyframes shake {

  50% {

    transform: translate3d(20px, 0, 0);

  }

}


@keyframes flip {

  100% {

    transform: rotateY(180deg);

  }

}


@keyframes pulse {

  50% {

    transform: scale(1.5);

  }

}


@keyframes glitch {

  50% {

    transform: skew(180deg);

  }

}


@keyframes fill {

  50% {

    transform: translateX(-5%);

  }

}


@keyframes sheen {

  100% {

    transform: rotateZ(60deg) translate(1em, -9em);

  }

}


@keyframes glow {

  50% {

    box-shadow: 0 0 40px hsl(12, 100%, 60%);

  }

}


@keyframes tonyhawk {

  50%,

  100% {

    transform: rotate(900deg);

  }

}


@keyframes blur {

  50% {

    filter: blur(20px);

    transform: skew(45deg);

  }

}


[anim="shake"]:not(.toggled) {

  animation: shake var(--ease-elastic-in-1) 300ms infinite alternate;

}


[anim="pulse"]:not(.toggled) {

  animation: pulse var(--ease-elastic-in-1) 1400ms infinite alternate;

}


[anim="glitch"]:not(.toggled) {

  animation: glitch var(--ease-elastic-in-1) 600ms infinite;

}


[anim="tonyhawk"]:not(.toggled) {

  animation: tonyhawk var(--ease-elastic-in-1) 600ms infinite;

}


[anim="flip"]:not(.toggled) {

  animation: flip var(--ease-elastic-in-1) 600ms infinite alternate;

}


[anim="fill"]:not(.toggled)::after {

  animation: fill var(--ease-spring-1) 8000ms infinite;

}


[anim="sheen"]:not(.toggled)::after {

  animation: sheen var(--ease-elastic-in-1) 1s infinite;

}


[anim="glow"]:not(.toggled) {

  animation: glow var(--ease-elastic-in-1) 600ms infinite alternate;

}


[anim="blur"]:not(.toggled) {

  animation: blur var(--ease-elastic-in-1) 1s infinite alternate;

}


[anim="fill"]::after {

  content: "";

  color: var(--black);

  position: absolute;

  display: flex;

  justify-content: center;

  align-items: center;

  font-size: 0.75rem;

  height: 100%;

  width: 200%;

  inset: 0;

  transform: translateX(-400px);

  background-color: hsl(12, 90%, 63%);

}


[anim="sheen"]::after {

  content: "";

  position: absolute;

  top: -50%;

  right: -50%;

  bottom: -50%;

  left: -50%;

  background: var(--red-sheen);

  transform: rotateZ(60deg) translate(-5em, 7.5em);

}


:root {

  --black: hsl(0, 0%, 13%);

  --dark: hsl(12, 32%, 2%);

  --gray: hsl(0, 0%, 70%);

  --white: hsl(0, 0%, 96%);

  --red: hsl(12, 90%, 63%);

  --red-shadow: hsl(12, 100%, 60%);

  --red-sheen: linear-gradient(

    to bottom,

    hsl(12, 90%, 43%),

    hsla(12, 40%, 70%, 0.5) 50%,

    hsl(12, 93%, 23%)

  );

}


html,

body {

  background-color: var(--black);

}


div:has(h2 + p) {

  display: grid;

  gap: 8px;

}


h2 {

  font-size: 1.25rem;

}


h2 + p {

  text-transform: uppercase;

  letter-spacing: 0.06em;

  color: var(--gray);

  font-size: 0.875rem;

}


main {

  max-width: 880px;

  margin: 0 auto;

  display: grid;

  grid-template-columns: 1fr;

  justify-content: center;

  align-items: center;

}


article {

  display: flex;

  flex-wrap: wrap;

  gap: 64px;

  align-items: center;

  justify-content: center;

  min-height: 100dvh;

  position: relative;

  padding-block: 32px;


  &::after {

    content: "";

    width: 100%;

    position: absolute;

    height: 1px;

    bottom: 0;

    background-image: linear-gradient(45deg, var(--red), transparent 70%);

  }

}


section {

  display: flex;

  flex-direction: column;

  gap: 16px;

  flex-basis: 180px;

  justify-content: center;

  align-items: center;

  text-align: center;

}


section {

  color: var(--white);

  font-family: "aglet-mono-variable", sans-serif;

  font-variation-settings: "wght" 400;

}


* {

  font-family: inherit;

  box-sizing: border-box;

}


button {

  all: unset;

  background-color: var(--black);

  padding: 6px 12px;

  border-radius: 6px;

  font-size: 0.875rem;

  text-transform: uppercase;

  letter-spacing: 0.04em;

  border: 1px solid var(--red);

  box-shadow: 0 0 4px var(--red-shadow);

  cursor: pointer;

  perspective: 1000px;

  position: relative;

  overflow: hidden;

}


.blurry {

  position: relative;

  transform-style: preserve-3d;

}


.blurry::before {

  content: "";

  position: absolute;

  inset: 0px;

  transform: translate3d(0px, 0px, -1px);

  background: var(--red-shadow);

  filter: blur(6px);

}


</style>


<script>

let anims = [...document.querySelectorAll("[anim]")];

console.log(anims);

let click = (el, cb) => el.addEventListener("click", cb);

let toggle = (el) => el.classList.toggle("toggled");

let clickTog = (el) => click(el, () => toggle(el));

anims.map(clickTog);


</script>

  <link  rel="stylesheet"href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css"/>


</head>


<main>

  <article>

    <section>

      <div>

        <h2>Shakes</h2>

        <p>Rejecti{ng</p>

      </div>

      <div>

        <button>CLICK ME</button>

        <img class="animate__animated animate__fadeInUp animate__delay-3s" anim="shake"  src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">

      </div>

    </section>

    <section>

      <div>

        <h2>Pulse</h2>

        <p>Partying</p>

      </div>

      <div>

        <button anim="pulse">CLICK ME</button>

      </div>

    </section>

    <section>

      <div>

        <h2>Glitch</h2>

        <p>Hacking</p>

      </div>

      <div>

        <button anim="glitch">CLICK ME</button>

      </div>

    </section>

    <section>

      <div>

        <h2>Turn</h2>

        <p>Flipping</p>

      </div>

      <div>

        <button anim="flip">CLICK ME</button>

      </div>

    </section>

    <section>

      <div>

        <h2>Fill</h2>

        <p>Loading</p>

      </div>

      <div>

        <button anim="fill">Click me</button>

      </div>

    </section>

    <section>

      <div>

        <h2>Sheen</h2>

        <p>Shining</p>

      </div>

      <div>

        <button anim="sheen">Click me</button>

      </div>

    </section>

    <section>

      <div>

        <h2>Emphasize</h2>

        <p>Glowing</p>

      </div>

      <div>

        <button anim="glow">Click me</button>

      </div>

    </section>

    <section>

      <div>

        <h2>Blur</h2>

        <p>Censoring</p>

      </div>

      <div>

        <button anim="blur">CLICK ME</button>

      </div>

    </section>

    <section>

      <div>

        <h2>Tony Hawk</h2>

        <p>900-ing</p>

      </div>

      <div>

        <button anim="tonyhawk">CLICK ME</button>

      </div>

    </section>

  </article>

  <article>

    <section>

      <div>

        <h2>Shakes</h2>

        <p>Rejecting</p>

      </div>

      <div>

        <button anim="shake">CLICK ME</button>

      </div>

    </section>

  </article>

  <article>

    <section>

      <div>

        <h2>Pulse</h2>

        <p>Partying</p>

      </div>

      <div>

        <button anim="pulse">CLICK ME</button>

      </div>

    </section>

  </article>

  <article>

    <section>

      <div>

        <h2>Glitch</h2>

        <p>Hacking</p>

      </div>

      <div>

        <button anim="glitch">CLICK ME</button>

      </div>

    </section>

  </article>

  <article>

    <section>

      <div>

        <h2>Turn</h2>

        <p>Flipping</p>

      </div>

      <div>

        <button anim="flip">CLICK ME</button>

      </div>

    </section>

  </article>

  <article>

    <section>

      <div>

        <h2>Fill</h2>

        <p>Loading</p>

      </div>

      <div>

        <button anim="fill">Click me</button>

      </div>

    </section>

  </article>

  <article>

    <section>

      <div>

        <h2>Sheen</h2>

        <p>Shining</p>

      </div>

      <div>

        <button anim="sheen">Click me</button>

      </div>

    </section>

  </article>

  <article>

    <section>

      <div>

        <h2>Emphasize</h2>

        <p>Glowing</p>

      </div>

      <div>

        <button anim="glow">Click me</button>

      </div>

    </section>

  </article>

  <article>

    <section>

      <div>

        <h2>Blur</h2>

        <p>Censoring</p>

      </div>

      <div>

        <button anim="blur">CLICK ME</button>

      </div>

    </section>

  </article>

  <article>

    <section>

      <div>

        <h2>Tony Hawk</h2>

        <p>900-ing</p>

      </div>

      <div>

        <button anim="tonyhawk">CLICK ME</button>

      </div>

    </section>

  </article>

</main>

Animation 2

 <style>

@import url('https://fonts.googleapis.com/css?family=Lato:100,100i,300,300i,400,400i,700,700i,900,900i');


*

{

margin: 0;

padding: 0;

}


body

{

font-family: 'Lato', sans-serif;

font-size: 14px;

color: #999999;

word-wrap:break-word;

}


p

{

margin: 0 0 10px;

}


ul

{

list-style: none;

}


.container {

width: 100%;

margin: auto;

font-weight: 900;

text-transform: uppercase;

text-align: center;

padding: 0 0 200px;

}


/*.take-input {

  margin: 50px 0 0;

}


.take-input input {

  width: 400px;

  height: 35px;

  padding: 0 10px;

  border-radius: 5px;

  border: 1px solid #ececec;

  margin: 0 15px 0 0;

  font-size: 15px;

}*/


a, a:link, a:visited {

  text-decoration: none;

  padding: 9px 15px;

  border: 1px solid #ececec;

  border-radius: 5px;

  color: gray;

}


.animate {

font-size: 50px;

margin: 100px 0 0;

border-bottom: 2px solid #ccc;

}


.animate span {

display: inline-block;

}


a.repeat {

  display: inline-block;

  font-size: 12px;

  text-transform: none;

  text-decoration: none;

  color: orange;

  padding: 5px 12px;

  border: 1px solid rgba(0, 0, 0, 0.15);

  font-weight: normal;

  margin: 0 0 0 50px;

  border-radius: 3px;

  position: relative;

  bottom: 15px;

}


a.repeat:hover {

  background: rgba(0, 0, 0, 0.7);

  color: white;

}


.animate span:nth-of-type(2) {

animation-delay: .05s;

}

.animate span:nth-of-type(3) {

animation-delay: .1s;

}

.animate span:nth-of-type(4) {

animation-delay: .15s;

}

.animate span:nth-of-type(5) {

animation-delay: .2s;

}

.animate span:nth-of-type(6) {

animation-delay: .25s;

}

.animate span:nth-of-type(7) {

animation-delay: .3s;

}

.animate span:nth-of-type(8) {

animation-delay: .35s;

}

.animate span:nth-of-type(9) {

animation-delay: .4s;

}

.animate span:nth-of-type(10) {

animation-delay: .45s;

}

.animate span:nth-of-type(11) {

animation-delay: .5s;

}

.animate span:nth-of-type(12) {

animation-delay: .55s;

}

.animate span:nth-of-type(13) {

animation-delay: .6s;

}

.animate span:nth-of-type(14) {

animation-delay: .65s;

}

.animate span:nth-of-type(15) {

animation-delay: .7s;

}

.animate span:nth-of-type(16) {

animation-delay: .75s;

}

.animate span:nth-of-type(17) {

animation-delay: .8s;

}

.animate span:nth-of-type(18) {

animation-delay: .85s;

}

.animate span:nth-of-type(19) {

animation-delay: .9s;

}

.animate span:nth-of-type(20) {

animation-delay: .95s;

}



/* Animation One */


.one span {

color: #24a8e6;

opacity: 0;

transform: translate(-150px, -50px) rotate(-180deg) scale(3);

animation: revolveScale .4s forwards;

}


@keyframes revolveScale {

60% {

transform: translate(20px, 20px) rotate(30deg) scale(.3);

}


100% {

transform: translate(0) rotate(0) scale(1);

opacity: 1;

}

}



/* Animation Two */


.two span {

color: #a5cb21;

opacity: 0;

transform: translate(200px, -100px) scale(2);

animation: ballDrop .3s forwards;

}


@keyframes ballDrop {

60% {

transform: translate(0, 20px) rotate(-180deg) scale(.5);

}


100% {

transform: translate(0) rotate(0deg) scale(1);

opacity: 1;

}

}



/* Animation Three */



.three span {

color: #b10e81;

opacity: 0;

transform: translate(-300px, 0) scale(0);

animation: sideSlide .5s forwards;

}


@keyframes sideSlide {

60% {

transform: translate(20px, 0) scale(1);

color: #b10e81;

}


80% {

transform: translate(20px, 0) scale(1);

color: #b10e81;

}


99% {

transform: translate(0) scale(1.2);

color: #00f0ff;

}


100% {

transform: translate(0) scale(1);

opacity: 1;

color: #b10e81;

}

}



/* Animation Four */



.four span {

color: #8d6a00;

opacity: 0;

transform: translate(0, -100px) rotate(360deg) scale(0);

animation: revolveDrop .3s forwards;

}



@keyframes revolveDrop {

30% {

transform: translate(0, -50px) rotate(180deg) scale(1);

}


60% {

transform: translate(0, 20px) scale(.8) rotate(0deg);

}


100% {

transform: translate(0) scale(1) rotate(0deg);

opacity: 1;

}

}



/* Animation Five */



.five span {

color: #dd3f0f;

opacity: 0;

transform: translate(0, -100px) rotate(360deg) scale(0);

animation: dropVanish .5s forwards;

}



@keyframes dropVanish {

30% {

transform: translate(0, -50px) rotate(180deg) scale(1);

}


50% {

transform: translate(0, 20px) scale(.8) rotate(0deg);

opacity: 1;

}


80% {

transform: translate(-100px, -100px) scale(1.5) rotate(-180deg);

opacity: 0;

}


100% {

transform: translate(0) scale(1) rotate(0deg);

opacity: 1;

}

}




/* Animation Six */



.six span {

color: #ddb40f;

opacity: 0;

transform: rotate(-180deg) translate(150px, 0);

animation: twister .5s forwards;

}



@keyframes twister {

10% {

opacity: 1;

}

100% {

transform: rotate(0deg) translate(0);

opacity: 1;

}

}




/* Animation Seven */



.seven span {

color: #348c04;

opacity: 0;

transform: translate(-150px, 0) scale(.3);

animation: leftRight .5s forwards;

}



@keyframes leftRight {

40% {

transform: translate(50px, 0) scale(.7);

opacity: 1;

color: #348c04;

}


60% {

color: #0f40ba;

}


80% {

transform: translate(0) scale(2);

opacity: 0;

}


100% {

transform: translate(0) scale(1);

opacity: 1;

}

}

</style>

<script>

/* This code is not required for the animation. This is only needed for the repeatation */


$(function(){

$('.repeat').click(function(){

    var classes =  $(this).parent().attr('class');

        $(this).parent().attr('class', 'animate');

        var indicator = $(this);

        setTimeout(function(){ 

        $(indicator).parent().addClass(classes);

        }, 20);

    });

});

</script>

<style>

.main-content

.concept.concept-one

- for (var i=1; i<10; i++)

.hover(class="hover-"+i)

h1 Desert

.concept.concept-two

each val, index in ['F','O','R','E','S','T']

.hover

h1= val

.concept.concept-three

.word

each val, index in ['C','A','N','Y','O','N']

.hover

div

div

h1= val

.concept.concept-four

h1 Glacier

.concept.concept-five

h1.word

each val, index in ['M','O','U','N','T','A','I','N','S']

span.char= val

.concept.concept-six

h1.word

each val, index in ['O','C','E','A','N']

span.char= val

.concept.concept-seven

h1 fries

.concept.concept-eight

h1.word

each val, index in ['F','A','L','L','S']

div.char(data-content=val)= val


footer

a(href="https://twitter.com/meowlivia_" target="_blank")

i.icon-social-twitter.icons

a(href="https://github.com/oliviale" target="_blank")

i.icon-social-github.icons

a(href="https://dribbble.com/oliviale" target="_blank")

i.icon-social-dribbble.icons

body {

background: #fff;

font-family: "Comfortaa", sans-serif;

position: relative;

}


footer {

text-align: center;

padding: 1em;

max-width: 80px;

position: fixed;

top: 0;

right: 25px;

a {

text-decoration: none;

display: inline-block;

width: 45px;

height: 45px;

border-radius: 50%;

background: transparent;

border: 1px dashed #fff;

color: #fff;

margin: 5px;

&:hover {

background: rgba(255, 255, 255, 0.1);

}

.icons {

margin-top: 12px;

display: inline-block;

font-size: 20px;

}

}

}


* {

box-sizing: border-box;

}


.main-content {

text-align: center;

text-transform: uppercase;

scroll-snap-type: y mandatory;

position: relative;

height: 100vh;

overflow-y: scroll;

}


.hover,

.word,

h1 {

cursor: pointer;

}


h1 {

position: relative;

color: #fff;

font: 900 60px Montserrat;

text-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);

}


.concept {

position: relative;

padding: 5em;

height: 100vh;

overflow: hidden;

scroll-snap-align: center;

&:before {

content: "";

position: absolute;

width: 100%;

height: 100%;

top: 0;

left: 0;

background: radial-gradient(rgba(0, 0, 0, 0.3), transparent);

opacity: 0;

transition: all 1s cubic-bezier(0.19, 1, 0.22, 1);

}

&:hover:before {

opacity: 0.5;

}

}


.concept-one {

display: grid;

grid: repeat(3, 1fr)/ repeat(3, 1fr);

background: yellow;

padding: 8em;

background: url("https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/desert.jpg")

no-repeat center center / cover;

h1 {

position: absolute;

margin: auto;

left: 0;

right: 0;

top: 50%;

margin-top: -30px;

transition: 0.5s ease;

z-index: 0;

letter-spacing: 25px;

}

.hover {

z-index: 1;

}

.hover-1:hover ~ h1 {

left: 30px;

margin-top: -10px;

}

.hover-2:hover ~ h1 {

margin-top: -10px;

}

.hover-3:hover ~ h1 {

right: 30px;

margin-top: -10px;

}

.hover-4:hover ~ h1 {

left: 30px;

}

.hover-6:hover ~ h1 {

right: 30px;

}

.hover-7:hover ~ h1 {

left: 30px;

margin-top: -50px;

}

.hover-8:hover ~ h1 {

margin-top: -50px;

}

.hover-9:hover ~ h1 {

right: 30px;

margin-top: -50px;

}

}


.concept-two {

display: grid;

grid: 100% / repeat(6, 1fr);

padding: 5em 15em;

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/forest.jpg)

center center / cover;

.hover {

position: relative;

display: grid;

place-items: center;

}

h1 {

color: transparent;

text-align: 0 1px 1px;

-webkit-text-stroke: 2px #fff;

text-shadow: none;

transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);

}

.hover:hover h1 {

transform: scale(1.5);

color: #fff;

-webkit-text-stroke: 2px transparent;

text-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);

}

}


.concept-three {

padding: 5em;

.word {

display: flex;

align-items: center;

max-width: 500px;

margin: auto;

}

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/canyon.jpg)

center center / cover;

.hover {

flex: 1;

display: grid;

height: calc(100vh - 10em);

grid: repeat(2, 2fr) / 100%;

position: relative;

div {

position: relative;

z-index: 5;

}

div:nth-child(1):hover ~ h1 {

margin-top: -10px;

}

div:nth-child(2):hover ~ h1 {

margin-top: -50px;

}

}

h1 {

position: absolute;

margin: auto;

left: 0;

right: 0;

top: 50%;

margin-top: -30px;

transition: 0.3s cubic-bezier(0.23, 1, 0.32, 1);

z-index: 0;

}

}


.concept-four {

height: 100vh;

position: relative;

display: flex;

align-items: center;

justify-content: center;

letter-spacing: 2em;

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/glacier.jpg)

no-repeat center center / cover;

h1 {

display: inline-block;

}

&:hover h1 {

letter-spacing: 25px;

transform: scale(1.3);

transition: 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);

}

}


.concept-five {

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/mountains.jpg)

center center / cover;

display: flex;

align-items: center;

.word {

width: 600px;

margin: auto;

display: flex;

align-items: center;

justify-content: center;

height: 80%;

&:hover {

.char:nth-child(even) {

top: 20px;

}

.char:nth-child(odd) {

top: -20px;

}

}

}

.char {

flex: 1;

position: relative;

display: inline-block;

top: 0;

transition: 0.5s cubic-bezier(0.19, 1, 0.22, 1);

}

}


.concept-six {

display: flex;

align-items: center;

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/beach.jpg) top

right / cover;

.word {

width: 550px;

margin: auto;

display: flex;

align-items: center;

justify-content: center;

height: 80%;

&:hover {

.char:nth-child(1) {

margin-top: -30px;

transform: rotate(-20deg);

}

.char:nth-child(2) {

margin: -40px 0px 0 10px;

transform: rotate(5deg);

}

.char:nth-child(3) {

margin: 15px 0 0 10px;

transform: rotate(12deg);

}

.char:nth-child(4) {

margin: -25px 0 0;

transform: rotate(5deg);

}

.char:nth-child(5) {

margin: -40px 5px 0;

transform: rotate(-10deg);

}

}

}

.char {

flex: 1;

transition: 0.3s ease-in-out;

position: relative;

}

}


.concept-seven {

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/fries.jpg)

top center / cover;

display: flex;

justify-content: center;

align-items: center;

h1 {

letter-spacing: 35px;

position: relative;

&:before {

content: "fries";

position: absolute;

margin: auto;

left: 0;

right: 0;

max-width: 400px;

color: transparent;

letter-spacing: 10px;

text-shadow: none;

}

}

&:hover h1:before {

transition: 0.6s ease;

color: rgba(255, 255, 255, 0.8);

animation: jump-out 0.6s ease forwards;

}

}


@keyframes jump-out {

0% {

opacity: 0;

transform: scale(1);

}

20% {

opacity: 1;

}

100% {

opacity: 0;

transform: scale(2);

}

}


.concept-eight {

background: url(https://meowlivia.s3.us-east-2.amazonaws.com/codepen/background/falls.jpg)

center center / cover;

display: flex;

align-items: center;

justify-content: center;

.word {

display: flex;

align-items: center;

justify-items: center;

width: 450px;

height: 80%;

&:hover .char:before {

transition: 0.6s ease;

color: rgba(255, 255, 255, 0.8);

animation: falls 1s ease forwards;

}

&:hover .char:nth-child(1):before {

animation: falls 0.9s ease 0.2s forwards;

}

&:hover .char:nth-child(2n + 3):before {

animation: falls 1s ease 0.3s forwards;

}

}

.char {

flex: 1;

position: relative;

&:before {

content: attr(data-content);

position: absolute;

top: 0;

color: transparent;

text-shadow: none;

}

}

}


@keyframes falls {

0% {

opacity: 0;

top: 0;

}

20% {

opacity: 1;

}

100% {

opacity: 0;

top: 100px;

}

}


</style>




<div class="my-element animate__animated animate__bounce animate__delay-2s">Example</div>

<img class="word" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">

<img class="concept-eight" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">


<img class="animate__animated animate__fadeInUp animate__delay-3s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">


<img class="animate__animated animate__fadeInUp animate__delay-4s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">

<img class="animate__animated animate__fadeInUp animate__delay-5s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">


</body>

</html>


</body>


</html>

Animation Codes

 <!DOCTYPE html>

<html>

<head>

<style> 

.base {

  padding: 30px;

  width: 100px;

  height: 100px;

  margin-bottom: 20px;

  margin-top: 20px;

  margin-left: 20px;

  box-sizing: border-box;

  background: pink;

}


#example1 {

  animation: rotate 3s ease 1s infinite;

}


@keyframes rotate {

  from {

    transform: rotate(0);

  }


  to {

    transform: rotate(360deg);

  }

}


#example2 {

  animation: rotate_translate 3s linear 1s infinite;

}


@keyframes rotate_translate {

  0% {

    transform: rotate(0);

  }

  50% {

    transform: rotate(180deg);

    margin-left: 70%;

  }

  100% {

    transform: rotate(360deg);

  }

}


#example3 {

  animation: rotate_translate_one_way 1.5s linear 1s infinite alternate;

}


@keyframes rotate_translate_one_way {

  0% {

    transform: rotate(0);

  }

  100% {

    transform: rotate(180deg);

    margin-left: 70%;

  }

}


#example4:hover {

  animation: rotate 3s ease infinite;

}


.base2 {

  margin: 50px 20px;

  font-size: 20px;

}


#bounce {

  animation: bounce 2s linear 1s infinite;

}

@keyframes bounce {

  0% {

    transform: translateY(0);

  }

  20% {

    transform: translateY(-15px);

  }

  30% {

    transform: translateY(0);

  }

  40% {

    transform: translateY(-15px);

  }

  50% {

    transform: translateY(0);

  }

}


#flash {

  animation: flash 2s linear 1s infinite;

}

@keyframes flash {

  20% {

    opacity: 0.1;

  }

  30% {

    opacity: 1;

  }

  40% {

    opacity: 0.1;

  }

  50% {

    opacity: 1;

  }

}


#shake {

  animation: shake 2s linear 1s infinite;

}

@keyframes shake {

  5% {

    transform: translateX(-10px);

  }

  10% {

    transform: translateX(10px);

  }

  15% {

    transform: translateX(-10px);

  }

  20% {

    transform: translateX(10px);

  }

  25% {

    transform: translateX(-10px);

  }

  30% {

    transform: translateX(10px);

  }

  35% {

    transform: translateX(-10px);

  }

  40% {

    transform: translateX(10px);

  }

  45% {

    transform: translateX(-10px);

  }

  50% {

    transform: translateX(0);

  }

</style>

</head>

<body>


<h1>CSS Animation</h1>


<div></div>


<p id="flash"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="bounce"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="shake"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="example1"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="example2"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="example3"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="example4"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="base"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


<p id="base2"><b>Note:</b> When an animation is finished, it goes back to its original style.</p>


</body>

</html>


<html>


<head>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">

<title>Home</title>

<head>

  <link

    rel="stylesheet"

    href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css"

  />

</head>

</head>


<body>

<!DOCTYPE html>

<html>

<body>


<canvas id="myCanvas" width="200" height="100" style="border:1px solid #000;"></canvas>


<script src="animation.js"></script>

<style>

.my-element {

  display: inline-block;

  margin: 0 0.5rem;


  animation: bounce; /* referring directly to the animation's @keyframe declaration */

  animation-duration: 2s; /* don't forget to set a duration! */

}

/* This only changes this particular animation duration */

.animate__animated.animate__bounce {

  --animate-duration: 2s;

}


/* This changes all the animations globally */

:root {

  --animate-duration: 800ms;

  --animate-delay: 0.9s;

}

</style>

<div class="animate__animated animate__bounce animate__delay-2s">Example</div>

<img class="animate__animated animate__fadeInUp animate__delay-1s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">

<img class="animate__animated animate__fadeInUp animate__delay-2s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">


<img class="animate__animated animate__fadeInUp animate__delay-3s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">


<img class="animate__animated animate__fadeInUp animate__delay-4s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">

<img class="animate__animated animate__fadeInUp animate__delay-5s" src="https://klinkhs.com/wp-content/uploads/2025/07/drink-to-your.jpg" width="244" height="144">


</body>

</html>


</body>


</html>



Earth

Yosemite National Park, meadow at the base of El Capitan