* * CSSセレクターは何をしますか?


97

最近* *CSSに出会いました。

サイト参照- サイトリンク

*CSSスタイルシートでの1つの使用法では、インターネットとスタックオーバーフローには例が殺到していますが* *、CSSで2つのシンボルを使用するかどうかはわかりません。

グーグルで検索しましたが、1つで*すべての要素が選択されるため、これに関する関連情報は見つかりませんでしたが、サイトで2回使用された理由がわかりません。これに欠けている部分は何ですか?なぜこのハックが使用されますか(ハックの場合)?

回答:


138

他の2つのセレクターを次々に配置する場合と同様に(たとえばli a)、子孫コンビネーターを取得します。だから、* *他の要素の子孫であるすべての要素がある-つまり、任意の要素ではありません文書全体のルート要素が。


thx for the reply ..これは私が考えていたものですが、確かではないので、コミュニティから尋ねると思いました
..

1
もう1つ質問する必要があります。私はコンセプトを理解しているが実際的な意味では理解していないかのように:(
swapnesh

2
@swapneshそれはブラウザのハックのように見えます。あります* { font-size: XXX }ルールと* * { font-size: YYY }ルールが。そのうちの1つはほとんどのブラウザに当てはまり、もう1つは特定のバグのあるブラウザに当てはまりますが、詳細を理解するための忍耐力はありません。これは、* html古いIEを検出するために一般的に使用されていたハックに似ています。
ホッブズ2013年

コメントの下に最後の詳細ブロックを追加するためのthx ..それはほぼ完璧なブロックです..そのためにブレインストーミングを行う必要はありません:) thxたくさん:)
swapnesh 2013年

10
の方法では* html、IE6のhtml要素* * 一致することに注意してください。
Alohci

80

ほんの少し大きな例:

これをあなたのサイトに追加してみてください:

* { outline: 2px dotted red; }
* * { outline: 2px dotted green; }
* * * { outline: 2px dotted orange; }
* * * * { outline: 2px dotted blue; }
* * * * * { outline: 1px solid red; }
* * * * * * { outline: 1px solid green; }
* * * * * * * { outline: 1px solid orange; }
* * * * * * * * { outline: 1px solid blue; }

デモ: http : //jsfiddle.net/l2aelba/sFSad/


例2:

* * CSSセレクターは何をしますか?

デモ: http : //jsfiddle.net/l2aelba/sFSad/34/


7
これは厳密には答えではありませんが、なんと素敵な視覚化でしょう!
aboy021 2013年

1
@ l2aelbaは本当に素晴らしい説明です:) +1
swapnesh 2013年

33

* *のように、最上位要素を除くすべてに一致しますhtml


Joeに感謝します。ここでテストしほか、上記のコメントに従ってテストしました。* *セレクターはhtml *、古き良きIE6以外のすべてのブラウザーと同等です:-)
Stano

@Stano * *html *...のHTMLファイルと同等です。ただし、CSSは他の種類のドキュメント(特にSVG)のスタイルを設定するために使用できます。
Sylvain Leroux 2013年

11

* は、すべての要素に特定のスタイルを適用することを意味します。

* *は、指定されたスタイルをすべての要素の子要素に適用することを意味します。例:

body > * {
  margin: 0;
}

これにより、本文のすべての子要素にマージンスタイルが適用されます。同じ方法、

* * {
  margin: 0;
}

の子要素に適用さmargin: 0*ます。つまり、margin: 0ほとんどすべての要素に適用されます。

通常は1つ*で十分です。2つは必要ありません* *


2
説明のthx +1 ..最後の行であなたが今述べた内容についてはよくわかりませんが、「一般的には、*で十分です。* *は必要ないでしょうね。」
swapnesh 2013年

3
* *子要素ではなく子孫要素にスタイルを適用します。子要素は>スペースではなく、例のようになります。子孫と子供は同じものではありません。
BoltClock

7

同じ方法で別の要素内にネストされているすべての要素div aを選択すると、<a>要素内のどこかにネストされているすべての要素が選択されます<div>

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.