このような質問はたくさんありますが、私が抱えている問題に実際に答えるものはありません。
私の状況は次のとおりです。
多くの要素の表示を変更して、それらがページに適切に表示され、セマンティクスが正しくなるようにする必要があります。
私は多少js版とnojs版を持っています。ユーザーが js を使用している場合にのみ表示される要素もあれば、js がオフになっている場合にのみ表示される要素もあります。
私は優れた特異性を持つセレクターを持っています (議論しないでください、それらはコンテキストで本当に意味があります。元のコードがどこにあるかを手放さないように、ここでクラスを変更しただけです)
.imagesContainer div.imageContainer .imagedata
そして、この要素は、ユーザーがjsを持っていない場合に非表示になることを意図しています. だから私は次のようなことをしました:
.nojs{
display:none;
}
HTMLは、優先度が外部ファイル<同じファイル<インラインになると予想しているため、同じファイルで試しました。しかし、現在は外部ファイル=同じファイル<インラインのようです(外部ファイルとインラインの間に優先順位はありません)。
この問題に対処する最善の方法は何ですか?
私が示した最初のセレクターの特異性を変更することは解決策ではありません。
また、CSS をインラインで配置したくありません。それは苦痛であり、マークアップでスペースを取りすぎて読みにくくなります。
また、!important を使用しないことをお勧めします。この種の問題を解決する正しい方法ではないと考えられており、私も同意します。
私は XHTML を使用しているため、DTD でスクリプト タグが定義されていません (私が従う規則に従って XHTML を使用する必要があります)。