MVCビューのjQueryUICSSクラスの一部を上書きします。
すべてのスタイル要素を外部スタイルファイルに移動したいと思います。しかし、上書きされたCSSクラスをすべてのビューに適用したくありません。
特定のビューのCSSクラスを指定する方法、またはこれにアプローチするための推奨される方法はありますか?
可能であれば、cssファイルを1つだけ保持したいと思います。
MVCビューのjQueryUICSSクラスの一部を上書きします。
すべてのスタイル要素を外部スタイルファイルに移動したいと思います。しかし、上書きされたCSSクラスをすべてのビューに適用したくありません。
特定のビューのCSSクラスを指定する方法、またはこれにアプローチするための推奨される方法はありますか?
可能であれば、cssファイルを1つだけ保持したいと思います。
スタイルをオーバーライドしたいビューの本体に id を追加できます。
HTML:
<body id="specialview">
...
</body>
CSS:
#specialview .class_override { ... }
「クラス」と言うときは「ルールセット」を意味すると仮定します。
1 つの CSS ファイルに固執するという要件を追加したので (インライン要素は不要だと思います<style>
):
各セレクターの前にid セレクターと子孫コンビネーターを付けます。#someid
次に、id をビューの body 要素に追加します。<body id="someid">
したがって:
.foo { text-decoration: overline; }
になる
#myFirstView .foo { text-decoration: overline; }
警告: これにより、(ビューに固有のルール セットのグループ内の) 各セレクターの特異性が高まります。これにより、これらのルールと一般的な「すべてのページに適用」ルールが適用される順序が変更される可能性があります。これは、すべての共有ルールの前に を付けて#generic
追加することで回避でき<html id="generic" lang="en">
ます。