[解決済み] 特定のクラスや属性を持たない要素を選択するCSSセレクタは書けますか?
質問
という要素をすべて選択するCSSセレクタルールを書きたい。 しない は特定のクラスを持っています。例えば、以下のようなHTMLがあったとします。
<html class="printable">
<body class="printable">
<h1 class="printable">Example</h1>
<nav>
<!-- Some menu links... -->
</nav>
<a href="javascript:void(0)" onclick="javascript:self.print()">Print me!</a>
<p class="printable">
This page is super interresting and you should print it!
</p>
</body>
</html>
printable"クラスを持たないすべての要素を選択するセレクタを書きたいと思います。 ナビ と a 要素を使用します。
これは可能なのでしょうか?
注:実際にこれを使いたいHTMLでは、もっと多くの要素で はありません。 は、printable" クラスを持つものよりも、持たないものです(上の例では逆になっていますね)。
どのように解決するのですか?
通常、クラスセレクタを
:not()
のような擬似クラスです。
:not(.printable) {
/* Styles */
}
:not([attribute]) {
/* Styles */
}
しかし、より良いブラウザのサポートが必要な場合(IE8以前は
:not()
という要素に対してスタイル・ルールを作成したほうがよいでしょう。
する
は、"printable" クラスを持っています。もし、あなたが実際のマークアップについて述べているにもかかわらず、それさえも実現不可能な場合は、その制限を回避してマークアップを行わなければならないかもしれません。
このルールで設定するプロパティによっては、その一部が
は
.printable
など、何らかの形で影響を与えます。例えば
display
は継承されませんが
display: none
の上で
:not(.printable)
は、要素とそのサブツリーをレイアウトから完全に削除するため、その要素とすべての子孫を表示することができなくなります。これを回避するには、多くの場合
visibility: hidden
この場合、可視の子孫は表示されますが、非表示の要素は元のようにレイアウトに影響を及ぼします。要するに、とにかく気をつけましょう。
関連
-
[解決済み】divの高さを画面の残りスペースで埋めるようにする
-
[解決済み] HTMLのテーブルからボーダーを完全に削除する方法
-
[解決済み] コンテナの幅に応じたフォントの拡大縮小
-
[解決済み] CSSでdivのアスペクト比を維持する
-
[解決済み] 最初の要素にクラスを指定するCSSセレクタ
-
[解決済み] CSSのクラスは、1つまたは複数の他のクラスを継承することができますか?
-
[解決済み] not()擬似クラスは複数の引数を持つことができますか?
-
[解決済み] 特定のテキストを含む要素に対するCSSセレクタはありますか?
-
[解決済み] 2つのクラスを持つ要素に適用するCSSセレクタ
-
[解決済み] CSSで要素を属性で選択する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] CSS - カーソルを置いたときに塗りつぶしの色を変更する - SVG PATH
-
[解決済み] 横型リストアイテム
-
[解決済み] HTMLとCSSによるテーブルスクロール [重複]について
-
[解決済み] HTML IFステートメント
-
[解決済み] input type="button "に背景画像を追加するには?
-
[解決済み] CSSでテキストや画像の背景を透明にするには?
-
[解決済み] スクロールバーを隠すが、スクロールはできる状態
-
[解決済み] How do I style a <select> dropdown with only CSS?
-
[解決済み] HTML5でminlengthの検証属性はありますか?
-
[解決済み】x属性のない要素にマッチするcssセレクタ【重複あり