

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
*{
padding: 0;
margin: 0;
}
body{
width: 100vw;
height: 100vh;
display: flex;
justify-content: center;
align-items: center;
background-color: #333f52;
}
div{
font-size: 4em;
text-transform: uppercase;
}
div > span{
display: inline-block;
position: relative;
}
.color{
animation-name: color;
animation-duration: 2s;
animation-timing-function: linear;
animation-iteration-count: 2;
}
@keyframes color {
50%{
color: peru;
transform: scale(2);
}
to{
color:palegreen;
transform: scale(.5);
}
}
</style>
</head>
<body>
<div>iloveyouforever</div>
<script>
let div = document.querySelector('div')
let spans = div.textContent.split('').map((item) => {
let span = document.createElement('span')
span.innerHTML = item
return span
})
div.innerHTML = ''
spans.forEach((span) => {
span.addEventListener('mouseover', () => {
span.classList.add('color')
})
span.addEventListener('animationend', () => {
span.classList.remove('color')
})
div.appendChild(span)
})
</script>
</body>
</html>