ホームページ >ウェブフロントエンド >CSSチュートリアル >すべてのブラウザは CSS のネストされた @media ルールをサポートしていますか? 一貫したスタイルを保証するにはどうすればよいですか?

すべてのブラウザは CSS のネストされた @media ルールをサポートしていますか? 一貫したスタイルを保証するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-24 06:52:27407ブラウズ

Do All Browsers Support Nested @media Rules in CSS, and How Can We Ensure Consistent Styling?

CSS での @media ルールのネスト: ブラウザーのサポートと一貫性

CSS での @media ルールのネストは、ブラウザーのサポートに関して混乱の対象となっています。 「どのブラウザがこの機能をサポートしていますか? 一貫性を確保するにはどうすればよいですか?」という疑問が生じます。

ブラウザ サポート

первоначально、@media ルールのネストはサポートされていませんでした。 CSS2.1。ただし、「条件付きルール」モジュールで説明したように、CSS3 ではこの機能が導入されました。最新のブラウザーは現在、@media at-rules の入れ子を広くサポートしていますが、Microsoft Edge は唯一の例外です。

一貫性

質問で提供されているコードは、入れ子になった @media を示しています。 rules:

@media screen and (min-width: 480px) {

    body{
        background-color:#6aa6cc;
        color:#000;    
    }

    @media screen and (min-width: 768px) {

        body{
            background-color:#000;
            color:#fff;    
        }
    }
}

CSS3 では、このコードは意図したとおりに動作し、それに基づいて適切なスタイルが適用されます。指定されたメディアクエリ。 Firefox と他のブラウザーの間の不一致は、Firefox が CSS3 仕様を実装しているのに対し、他のブラウザーは依然として古い CSS2.1 標準に準拠しており、ネストされた @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;
    }
}

ネストを削除すると、すべての主要なブラウザで CSS3 が完全に実装されるまで、コードはすべてのブラウザで一貫して動作します。

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。