<style>
*{padding: 0;margin: 0;}
body{
width: 100vw;
height: 100vh;
display: flex;
justify-content: center;
align-items: center;
background-color: #34495e;
}
div{
font-size: 5em;
font-weight: bold;
text-transform: uppercase;
color: #9b59b6;
}
div>span{
position: relative;
display: inline-block;
}
.color{
animation: color;
animation-duration: 1s;
animation-iteration-count: 2;
animation-timing-function: linear;
animation-direction:alternate ;
}
@keyframes color{
50%{
color:#f1c40f;
transform:scale(2);
}
100%{
color:#f1c40f;
transform:scale(0.5)
}
}
</style>
<body >
<span></span>
<div>houdunren.com</div>
<script>
const div = document.querySelector("div");
[...div.textContent].reduce(function(pre,cur,index){
pre == index && (div.innerHTML="");
let span = document.createElement('span');
span.innerHTML =cur;
div.appendChild(span);
span.addEventListener("mouseover",function(){
this.classList.add("color");
})
span.addEventListener("animationend",function(){
this.classList.remove("color");
})
},0)
</script>