Media element pseudo-classes
:buffering は CSS の擬似クラスセレクターで、再生可能な要素(<audio> や <video> など)がメディアリソースをバッファリングしているときに、その要素が再生可能であることを表します。
要素は、メディアデータの読み込みを試みているが、再生を開始または継続するのに十分なデータがまだ存在しないために再生を続けることができない場合、バッファリング中であるとみなされます。 詳細については、「メディアのバッファリング、シーク、および時間範囲のガイド」をご覧ください。
メモ: 要素が「バッファリング」の時は、 :playing ともみなされます。 :buffering が要素に一致する場合、 :playing もその要素に一致します。
対応ブラウザ
| 機能 | デスクトップ | モバイル | ||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Safari | Chrome Android | Safari iOS | |
| | | 150 | 15.4 | | 15.4 | |
| その他 | ||||||
| `:ミュート` | | | 150 | 15.4 | | 15.4 |
| `:一時停止` | | | 150 | 15.4 | | 15.4 |
| `:遊んでます` | | | 150 | 15.4 | | 15.4 |
| `:探しています` | | | 150 | 15.4 | | 15.4 |
| `:停止` | | | 150 | 15.4 | | 15.4 |
| `:ボリュームロック` | | | 150 | 15.4 | | 15.4 |
基本構文
CSS
video:playing {
outline: 2px solid green;
}
video:paused {
opacity: 0.7;
}
audio:muted {
filter: grayscale(1);
} ライブデモ
実務での使いどころ
-
メディア再生状態の視覚的フィードバック
動画の再生中と一時停止中で異なるスタイルを適用し、現在の再生状態をユーザーに視覚的に伝えます。
注意点
- 2026年3月時点でSafariのみの対応です。クロスブラウザ対応にはJavaScriptでのイベント監視が必要です。
アクセシビリティ
- 再生状態の変化を色やスタイルだけでなく、aria-liveリージョンで通知するなど、スクリーンリーダーにも伝わる方法を併用してください。