このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

::-webkit-meter-optimum-value 擬似要素 (CSS)

非標準: この機能は標準化されていません。非標準の機能はブラウザーの対応が限られ、将来的に変更または削除される可能性があるため、本番環境での使用は推奨されません。ただし、標準の選択肢が存在しない特定のケースでは、有効な代替手段となる場合があります。

::-webkit-meter-optimum-valueCSS擬似要素で、<meter> 要素の値が「低~高」の範囲内にある場合、またはその値が最適値と等しい場合に、その要素にスタイル設定を適用します。

デフォルトの色は緑色です。

構文

css
::-webkit-meter-optimum-value {
  /* ... */
}

この例は、WebKit または Blink ベースのブラウザーでのみ動作します。

HTML

html
通常:
<meter min="0" max="10" low="3" high="7" optimum="6" value="6">
  スコア 6/10
</meter>
<br />
スタイル設定:
<meter id="styled" min="0" max="10" low="3" high="7" optimum="6" value="6">
  スコア 6/10
</meter>

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-optimum-value {
  background: linear-gradient(
    to bottom,
    #77ff77,
    #009900 45%,
    #009900 55%,
    #77ff77
  );
  height: 100%;
  box-sizing: border-box;
}

JavaScript

js
// 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");
}

結果

仕様書

どの仕様書にもありません。

ブラウザーの互換性

関連情報

WebKit/Blink で <meter> 要素のほかの部分にスタイル設定するために使用される擬似要素: