JSFiddle - React, Tailwind, and code Playground
HTML
<div class="progress">
<div class="fill" style="width: 10%"></div><div class="arrow"></div>
</div>
<p>
<input type="button" value="resize" id="myButton"/>
</p>
CSS
.progress {
width: 100%;
background-color: lightgray;
height: 20px;
}
.fill {
display: inline-block;
height: 20px;
transition: width 1s;
background: linear-gradient(to right, #d0d9d8 0%, rgb(237, 28, 36) 100%)
}
.arrow {
display: inline-block;
width: 10px;
height: 20px;
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAUCAIAAADUTlA/AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAAaSURBVChTY3gro4IfjapARaMqUBE9VMioAABP/AK8RcGPowAAAABJRU5ErkJggg==")
}
JavaScript
var size = 10;
$("#myButton").on("click", function () {
size = size + 25;
size = (size > 90) ? 10 : size;
$(".fill").width(size + "%");
});