ホームページ > ウェブフロントエンド > CSSチュートリアル > ネストされた CSS @media ルールはすべてのブラウザーで一貫して機能しますか?

ネストされた CSS @media ルールはすべてのブラウザーで一貫して機能しますか?

Susan Sarandon
リリース: 2024-12-15 12:28:11
オリジナル
983 人が閲覧しました

Do Nested CSS @media Rules Work Consistently Across All Browsers?

CSS での @media ルールのネスト、再考

元の質問では、CSS でネストされた @media ルールを含む CSS コード スニペットの一貫性のないレンダリングについて調査していました。さまざまなブラウザ。以下は、ブラウザーのサポートの現在の状態に基づいた更新された分析です:

CSS3 のネストされた @media ルール

CSS3 の CSS Conditional Rules モジュールに従って、ネストされた @mediaルールが完全にサポートされるようになりました。次の構文が有効です:

@media print {
  #navigation { display: none }
  @media (max-width: 12cm) {
    .note { float: none }
  }
}
ログイン後にコピー

ブラウザのサポート

Firefox、Safari、Chrome、Microsoft Edge、Opera などの最新のブラウザは、ネストされた @media をサポートするようになりました。 CSS Conditional 3 で定義されているルール。Internet Explorer はこれをサポートしていません。

元の問題

元の質問のコードは、ブラウザー間で一貫して動作しないネストされた @media ルールを示していました。これは、当時の古いバージョンのブラウザでサポートされていた仕様である CSS2.1 でのネストがサポートされていなかったためです。

解決策

対応するブラウザの場合ネストされた @media ルールはサポートされていません。回避策は、ネストを削除して複数の @media ルールを記述することです。個別に:

@media screen and (min-width: 480px) {
    body {
        background-color: #6aa6cc;
        color: #000;
    }
}

@media screen and (min-width: 768px) {
    body {
        background-color: #000;
        color: #fff;
    }
}
ログイン後にコピー

メディア条件付き @import

メディア条件付き @import ステートメントが一貫して機能する理由は、スタイルシートを条件付きで適用するためではなく、スタイルシートを適用するためです。 @media 内でのネストが可能になるためrules.

結論

CSS Conditional 3 仕様に従って、ネストされた @media ルールが最新のブラウザーで広くサポートされるようになりました。この機能をサポートしていないレガシー ブラウザの場合、簡単な回避策は別の @media ルールを使用することです。

以上がネストされた CSS @media ルールはすべてのブラウザーで一貫して機能しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート