Я не знаю, есть ли в div больше, чем просто цвет фона, который показывает прогресс, но давайте предположим, что это единственное, что есть.
Все, что вам нужно сделать, это убедиться, что индикатор выполнения имеет фиксированную ширину, высоту и переполнение: скрыто.
Затем вы помещаете в него элемент div, имеющий желаемый цвет фона и ширину, равную ширине контейнера. Оба div'а должны иметь позицию: свойство, определенное, абсолютное или относительное, на самом деле не имеет значения. Тогда единственное, что осталось, это установить внутренний div в желаемую позицию, например left: -50%;
Только эта последняя часть вам понадобится JavaScript, если вы хотите сделать это динамически. Что-то вроде getElementById ('progress'). Style = 'left: -50%' должно сработать.
Быстрый и грязный (но работающий) пример:
<div style="width: 200px; height: 2em; overflow:
hidden; position: relative; padding: 1px; border: 1px solid red">
<div style="width: 200px; height: 2em;
background: blue; position: relative; left: -50%;">
</div>
</div>