css pseudo element
`::-webkit-meter-bar` CSS pseudo-element
The ::-webkit-meter-bar CSS pseudo-element is a WebKit extension that represents the background of a <meter> element. It is used for selecting and applying styles to the container of a meter gauge.
Syntax
::-webkit-meter-bar {
/* ... */
}
Examples
HTML
Normal: <meter min="0" max="10" value="6">Score 6/10</meter>
<br />
Styled: <meter id="styled" min="0" max="10" value="6">
Score 6/10
</meter>
CSS
meter {
height: 30px;
width: 200px;
vertical-align: -0.8rem;
}
.safari meter {
/* Reset the default appearance for Safari only */
/* .safari class is added via JavaScript */
-webkit-appearance: none;
}
#styled::-webkit-meter-bar {
background: lime;
box-shadow: 0 10px 20px grey inset;
border-radius: 10px;
}
JavaScript
// Safari requires <meter> elements to have an `appearance` of `none` for custom styling
// using `::-webkit-meter-*` selectors, but `appearance: none` breaks rendering on Chrome.
// Therefore, we must check if the browser is Safari-based.
const isSafari =
navigator.userAgent.includes("AppleWebKit/") &&
!navigator.userAgent.includes("Chrome/");
if (isSafari) {
document.body.classList.add("safari");
}
Result
Interactive exampleOpen the canonical MDN source to run this embedded demo.
Specifications
Not part of any standard.
Browser compatibility
Browser compatibilityCompatibility data is available on the canonical MDN page.
See also
-
The pseudo-elements used by WebKit/Blink to style other parts of a
<meter>element are as follows: