JSFiddle - React, Tailwind, and code Playground
by eprouver
HTML
<div class="hoverholder">
<div id="listen" class="hoverbutton"></div>
</div>
<div class="hoverholder">
<div id="listen" class="hoverbutton"></div>
</div>
<div class="hoverholder">
<div id="listen" class="hoverbutton"></div>
</div>
CSS
body{
line-height:0;
}
.hoverbutton{
border-radius: 100%;
background:#666;
height:50px;
width:50px;
-webkit-transform:scale(0);
}
.hoverholder{
float:left;
border: 3px solid #666;
background:white;
padding: 3px;
border-radius:100%;
margin:10px;
}
.hearted{
height:50px;
width:50px;
line-height:50px;
}
.hoverholder:hover .hoverbutton{
-webkit-animation: hoverheart 1s 1;
-webkit-animation-timing-function: ease-in;
}
@-webkit-keyframes hoverheart {
0% { -webkit-transform: scale(0); }
100% { -webkit-transform: scale(1); }
}
JavaScript
$('.hoverbutton').on('webkitAnimationEnd',function(){
$(this).replaceWith($('<div class="hearted">Hearted</div>'));
})