::-webkit-meter-inner-element

Nicht standardisiert: Diese Funktion ist nicht standardisiert. Wir raten davon ab, nicht-standardisierte Funktionen auf produktiven Webseiten zu verwenden, da sie nur von bestimmten Browsern unterstützt werden und sich in Zukunft ändern oder entfernt werden können. Unter Umständen kann sie jedoch eine geeignete Option sein, wenn es keine standardisierte Alternative gibt.

::-webkit-meter-inner-element ist ein proprietäres WebKit CSS-Pseudoelement, das verwendet wird, um Stile auf das äußere enthaltende Element eines -Elements anzuwenden. Zusätzliches Markup, um das Meter-Element schreibgeschützt darzustellen.

Syntax

css
::-webkit-meter-inner-element {
  /* ... */
}

Beispiele

Dies funktioniert nur in WebKit- und Blink-basierten Browsern wie Safari, Chrome und Chromium-basierten Versionen von Edge.

HTML

html
Normal: Score 6/10

Styled: Score 6/10

CSS

css
body {
  font-family: monospace;
}

.safari meter {
  /* Reset the default appearance for Safari only */
  /* .safari class is added via JavaScript */
  -webkit-appearance: none;
}

#styled::-webkit-meter-inner-element {
  -webkit-appearance: inherit;
  box-sizing: inherit;
  border: 1px dashed #aaa;
}

JavaScript

js
// Safari requires  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 is_safari =
  navigator.userAgent.includes("AppleWebKit/") &&
  !navigator.userAgent.includes("Chrome/");

if (is_safari) {
  document.body.classList.add("safari");
}

Ergebnis

Spezifikationen

Nicht Teil eines Standards.

Browser-Kompatibilität

Siehe auch

Die Pseudoelemente, die von WebKit/Blink verwendet werden, um andere Teile eines -Elements zu stylen, sind wie folgt: