JSFiddle - React, Tailwind, and code Playground
HTML
<ol class="steps">
<li>Foo</li>
<li>Bar</li>
<li>Baz</li>
</ol>
CSS
ol.steps {
list-style-type: none;
counter-reset: step-counter;
padding-left: 60px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
ol.steps li {
position: relative;
padding: 10px 20px;
height: 50px;
}
ol.steps li:before {
content: counter(step-counter, decimal);
counter-increment: step-counter;
position: absolute;
left: -50px;
top: 10px;
border: 1px solid #ccc;
width: 45px;
height: 45px;
line-height: 45px;
border-radius: 50px;
background: #f9f9f9;
text-align: center;
font-size: 28px;
color: #aaa;
-webkit-animation: spin 2s infinite linear;
-moz-animation: spin 2s infinite linear;
-o-animation: spin 2s infinite linear;
-ms-animation: spin 2s infinite linear;
animation: spin 2s infinite linear;
}
ol.steps li:hover:before {
width: 60px;
height: 60px;
line-height: 60px;
left: -57px;
top: 2px;
-webkit-animation: spin 2s infinite linear;
-moz-animation: spin 2s infinite linear;
-o-animation: spin 2s infinite linear;
-ms-animation: spin 2s infinite linear;
animation: spin 2s infinite linear;
}