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.
The ::-webkit-progress-inner-element CSS pseudo-element represents the outermost container of the <progress> element. It is the parent of the ::-webkit-progress-bar pseudo-element.
Note: In order to let ::-webkit-progress-value take effect, -webkit-appearance needs to be set to none on the <progress> element.
Syntax
::-webkit-progress-inner-element
Examples
These examples work only on Blink and WebKit.
Adding a black border around the progress bar
In this example, a 2px black border is added around the progress bar.
HTML
<progress value="10" max="50">
CSS
progress {
-webkit-appearance: none;
}
::-webkit-progress-inner-element {
border: 2px solid black;
}
Result
Result screenshot
If you're not using a Blink or WebKit browsear, the above code resuls in a progress bar looking like this:

Specifications
Not part of any standard.
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
::-webkit-progress-inner-element | Chrome Full support 23 | Edge Full support 79 | Firefox No support No | IE No support No | Opera Full support 15 | Safari Full support 6.1 | WebView Android Full support ≤37 | Chrome Android Full support 25 | Firefox Android No support No | Opera Android Full support 14 | Safari iOS Full support 7 | Samsung Internet Android Full support 1.5 |
Legend
- Full support
- Full support
- No support
- No support
- Non-standard. Expect poor cross-browser support.
- Non-standard. Expect poor cross-browser support.
See also
- The pseudo-elements used by WebKit/Blink to style other parts of a
<progress>element: ::-moz-progress-bar::-ms-fill
