Have you thought about using HTML5’s `progress` element?

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/progress