Non-standard
 
      This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.
Summary
The ::-webkit-progress-bar CSS pseudo-element represents the entire bar of a <progress> element. Normally it's only visible as the unfilled portion of the bar, since by default it's rendered below the ::-webkit-progress-value pseudo-element. It is a child of the ::-webkit-progress-inner-element pseudo-element and the parent of the ::-webkit-progress-value pseudo-element.
Note: In order to let ::-webkit-progress-value take effect, -webkit-appearance needs to be set to none on the <progress> element.
Specifications
Not part of any specification. This is a proprietary pseudo-element specific to WebKit/Blink.
Example
CSS content
progress {
  -webkit-appearance: none;
}
::-webkit-progress-bar {
   background-color: orange;
}
HTML content
<progress value="10" max="50">
Output
A progress bar using the style above would look like this:

Browser compatibility
| Feature | Firefox (Gecko) | Chrome | Internet Explorer | Opera | Safari | 
|---|---|---|---|---|---|
| Basic support | No support | (Yes) | No support | (Yes) | (Yes) | 
| Feature | Firefox Mobile (Gecko) | Android | IE Phone | Opera Mobile | Safari Mobile | 
|---|---|---|---|---|---|
| Basic support | No support | (Yes) | No support | (Yes) | (Yes) | 
See also
- The pseudo-elements used by WebKit/Blink to style other parts of a <progress>element:
- ::-moz-progress-bar
- ::-ms-fill