Limited support 注意が必要。一部のブラウザのみ対応。プロダクション利用は慎重に判断すること。

対応ブラウザ

機能 デスクトップ モバイル
Chrome
Edge
Firefox
Safari
Chrome Android
Safari iOS
@custom-media
実験的
148
DOM API
CSSCustomMediaRule
実験的
146
1+対応 (バージョン) 未対応 注釈あり サブ機能の解説は MDN Web Docs (CC BY-SA 2.5)
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります

基本構文

CSS
@custom-media --narrow-window (max-width: 30em);
@custom-media --wide-window (min-width: 60em);

@media (--narrow-window) {
  .container { padding: 1rem; }
}

ライブデモ

@custom-media definition

CSS @custom-media definition demo.

プレビュー全画面表示

usageexample

CSS usageexample demo.

プレビュー全画面表示

Multipledefinition

CSS Multipledefinition demo.

プレビュー全画面表示

実務での使いどころ

  • レスポンシブデザインのブレイクポイント管理

    プロジェクト全体のブレイクポイントを@custom-mediaで一元定義し、変更時に一箇所の修正で済むようにします。

注意点

  • 現在ブラウザネイティブサポートがないため、使用する場合はPostCSSなどのビルドツールが必須です。

アクセシビリティ

  • メディアクエリの命名はブレイクポイントの意図を明確に表現し、チーム内での認識統一に役立ててください。