JSFiddle - React, Tailwind, and code Playground
by Ico Dimchev
HTML
<p> <span class="gotin">This</span> <span class="gotin">is</span> <span class="gotin">just</span> <span class="gotin">a</span> <span class="gotin">normal</span> <span class="gotin">parahraph</span> </p>
CSS
/*
Basic reset
*/
*,:before,:after {
-moz-box-sizing:border-box;
box-sizing:border-box;
}
body,html,div,p {
margin:0;
padding:0;
outline:none;
}
/*
Styles
*/
p {
font-family:Helvetica;
margin-top:50px;
font-size:22px;
color:#000;
}
.gotin {
position:relative;
transition:all .5s;
}
.gotin:before {
content:"";
display:block;
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background-color:#000;
-webkit-transform:scaleX(0);
-ms-transform:scaleX(0);
transform:scaleX(0);
-webkit-transform-origin:right center;
-ms-transform-origin:right center;
transform-origin:right center;
-webkit-transition:0 .4s cubic-bezier(0.19,1,.22,1);
transition:transform .4s cubic-bezier(0.19,1,.22,1);
z-index:-1;
}
.gotin:hover {
color:#fff;
}
.gotin:hover:before {
-webkit-transform:scaleX(1);
-ms-transform:scaleX(1);
transform:scaleX(1);
-webkit-transform-origin:left center;
-ms-transform-origin:left center;
transform-origin:left center;
-webkit-transition:0 .4s cubic-bezier(0.19,1,.22,1);
transition:transform .4s cubic-bezier(0.19,1,.22,1);
}