特定のクラスの子孫ではないスパンを選択したいので、「いいえ」としましょう。これが私のCSSです:
div:not(.no) span{background-color:#00f;}
ここにHTMLがあります
<div>
<span>yes 1</span>
</div>
<div class="no">
<span>no 1</span>
</div>
<div class="no">
<div>
<span>no 2</span>
</div>
</div>
2 つの質問:
- CSS が yes 1 と no 2 の両方に適用されるのはなぜですか?
ユニバーサル セレクターに切り替えると、全体が壊れてしまうのはなぜですか?
*:not(.no) span{background-color:#00f;}
JSFiddle のコードは次のとおりです: http://jsfiddle.net/stephaniehobson/JtNZm/