Caution

お使いのブラウザはJavaScriptが実行できない状態になっております。
当サイトはWebプログラミングの情報サイトの為、
JavaScriptが実行できない環境では正しいコンテンツが提供出来ません。
JavaScriptが実行可能な状態でご閲覧頂くようお願い申し上げます。

CSSプロパティ辞典

  1. トップページ
  2. CSSプロパティ辞典
  3. 【CSSセレクタ】E:not(s)

【CSSセレクタ】E:not(s)

セレクタ:not(セレクタ)』で、特定の要素以外の要素や、特定の属性や値を持たない要素に適用できます。IE8以下では動きません。

『:not()』の記述方法は『()』の中に否定したいセレクタを記述すればOKです。全ての要素の中から特定のセレクタを除外したい場合は『*:not(セレクタ)』と記述すればOKで、『*』は省略できますので『:not(セレクタ)』と記述してもOKです。『()』の中に属性セレクタを入れることもできます。ただし、単純セレクタ(『 』や『>』や『+』などを使用した子孫要素や兄弟要素を特定するセレクタ)以外のセレクタは入れることができませんのでご注意ください。

『:not()』は複数続けて記述することが可能なので『:not(セレクタ1):not(セレクタ2)』といったように複数の条件付けをすることが可能です。

尚、全ての要素に対して『:not()』を記述した場合(『:not()』もしくは『*:not()』)に、一部のブラウザでその指定が反映されないバグが確認されていますのでご注意ください。

サンプルコード
p:not(.hoge) { color: blue;} /* p要素の中から『hoge』というクラス名を持たない要素を赤字にします。 */
p:not([class]) { font-size: 20px;} /* p要素の中から『class』属性を持たない要素の文字サイズを20pxにします。 */
div:not([class]):not([id]) { background-color: yellow;} /* div要素の中からクラス名とid名を持っていない要素の背景を黄色にします。 */
div:not(p span) { background-color: blue;} /* 『()』の中には単純セレクタしか入れられませんのでこの指定は反映されません。 */
ブラウザでの表示結果
p:not(.hoge) { color: blue;} /* p要素の中から『hoge』というクラス名を持たない要素を赤字にします。 */
p:not([class]) { font-size: 20px;} /* p要素の中から『class』属性を持たない要素の文字サイズを20pxにします。 */
div:not([class]):not([id]) { background-color: yellow;} /* div要素の中からクラス名とid名を持っていない要素の背景を黄色にします。 */
div:not(p span) { background-color: blue;} /* 『()』の中には単純セレクタしか入れられませんのでこの指定は反映されません。 */

<p>ここはp要素です。</p>
<p class="hoge">ここはp要素です。class名に『hoge』と指定しています。</p>
<div>ここはdiv要素です。</div>
<div class="miku">ここはdiv要素です。class名に『miku』と指定しています。。</div>
<div id="miku">ここはdiv要素です。id名に『miku』と指定しています。</div>

対応ブラウザ
IE6 IE7 IE8 IE9 IE10 IE11 Safari Chrome Firefox Opera

iPhone Safari Android2系 標準ブラウザ Android4系 標準ブラウザ

記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。