最初のルールが特に「higher」であっても、後続のルールを上書きしないように、CSS ルールを重要度が低いとマークする方法はありますか? たとえば、CSS ファイルに次の内容があるとします。
#inputDiv input[type="text"]{
width:125px;
}
#differentInput1{
width:25px;
}
#differentInput2{
width:500px;
}
私が目指していたのは、div「inputDiv」の子であるすべてのテキスト入力フィールドの幅が 125 ピクセルになるというアイデアです。ただし、特定の入力フィールドは他の幅になります。問題は、最初の宣言が特定の項目の宣言をオーバーライドすることです。
私は次のことを試しました:
- 特定の幅ごとに !important を追加します。動作しますが、多くの人が (正しいと思いますが) !important は避けるべきだと主張しており、特定の幅を持つ各要素に追加する必要があるため、かなり面倒です。
- それぞれの特定のセレクターの先頭に #inputDiv を追加します (例: #inputDiv #differentInput1)。これも機能し、!important の使用に関する問題を回避しますが、各要素に対して実行する必要があるため、依然として面倒です。
最初の宣言の項目はそれほど重要ではなく、何も上書きすべきではないと簡単に言う方法はありますか?
ベストアンサー1
これは CSS と相反するものなので、これを行う方法はありません。反対のことを行うのも同様に不正行為です。唯一の選択肢は、セレクタの詳細性に頼ることです。たとえば、ID の代わりに!important
クラスを使用することで、それほど面倒ではない方法でこれを記述できます。inputDiv