@-rule を使用すると、その @-rule イベント中に要素 (印刷、モバイル デバイスなど) のルールセットを持つことができます。しかし、特定のセレクターについてはどうでしょうか?
大規模なサイトのサブページで作業しており、どのページにもマスター スタイルシートを使用する必要があります。スタイル ルールが、マスター スタイル シートのルールによって切り捨てられることがあります。これを克服するには、すべてのルールの前に「#mypage #content blah blah」を追加して、CSS をより具体的にする必要があります。それは非常に速く乱雑になります。私がやりたいことは次のようなものです:
@#mypage {
div {
border: 1px solid #000;
}
div p {
color: #00f;
}
}
私が作成したすべてのルールが、私が取り組んでいるページのセクションの ID に含まれるようにします。
ああ、言い忘れましたが、私のページはテンプレート フレーム内にあるため (私が理解している限り) @namespace を使用できません (したがって、マスター スタイルシートが必要です)。 page-url) 私のスタイルシートはマスター スタイルシートを上書きします。
簡単なものがありませんか?
説明:
申し訳ありませんが、私は単純にしようとして、漠然としすぎていたと思います...
グローバル スタイル シートを持つより一般的なテンプレート (マストヘッド、サイドバー ナビゲーションなど) 内に配置されるページのコンテンツを開発していますが、そのコンテンツを制御することはできません。
私のセクションだけのスタイルシートにはいくらかの自由があります。ルールによってグローバル スタイルシートが誤って上書きされることは望ましくありません。また、ルールに非常に長いセレクターを使用して、グローバル スタイルシートがスタイルシートを上書きするのを回避したいと考えています。たとえば、私が言いたいのなら
「すべてのテーブルに黒い境界線があります」
サイドバーのテーブルの周りに黒い境界線を配置するリスクがあります。しかし、私が言うなら
「div #content 内のすべてのテーブルには黒い境界線があります」
これは、より具体的なルールがない場合にのみ機能します。
これで、各ルールを確認し、一連の長いセレクターを追加して、各ルールが自分のセクションでのみ機能することを確認できますが、これはあまり魅力的でも楽しいことでもありません。上記の例のように、すべてのルールをより大きなルールの中に入れ子にして、主なルールを作成できるようにしたいと考えていました。
#content {
//and place all of my style rules inside of that:
p {
border: pink;
}
そのため、具体性を宣言する必要があるのは 1 回だけで、メイン ルール内のすべてのルールがカバーされます。