子孫結合子

子孫結合子 (選択子)

[1] 単純選択子列の間に空白だけを置くことによって表現される子孫結合子 (descendant combinator) は、 前の単純選択子列によって表される要素子孫であって後の単純選択子列で表される要素を表す結合子です。

仕様書

歴史

草創期

[20] >>19>>18 は現在の子孫結合子と同様の構文ですが、 >>17 以降の案では先祖の方を () で括る構文になっています。

[22] >>21 では CSS1 に含まれるものの optional とされています。

CSS1

[24] >>23>>20 の構文から、現在の構文に変わりました。 >>25 までには用語も文脈的選択子に変わっています。

[10] この頃は結合子という概念はなく、文脈的選択子の機能として子孫結合子に相当するものが説明されていました。

CSS2

[11] CSS2結合子という概念が導入され、他に子孫結合子隣接兄弟結合子が追加されました。

[16] 初出は >>15 で、その前は CSS1 風の定義でした。

[7] CSS2単純選択子列 (CSS2 でいう単純選択子) の後に子孫結合子が続き、 更に単純選択子列が並ぶ列のことを子孫選択子と呼んでいました。

[8] この用語は選択子3では使われていません。

選択子3

[12] 選択子3では特に変更はありませんでした。

XBL2

[14] XBL2影木との関係を規定していました。

[3] 例えば選択子

h1 em

... は、 h1 要素子孫 (子要素孫要素、...) である em 要素を表します。

[4] 子孫はあくまで1つの文書木の中での関係なので、例えば h1 要素子孫iframe 要素があってそこに含まれる文書em 要素があったとしても、 それはこの選択子とは一致しません。

関連

[5] 子供結合子孫要素以下ではなく子要素にだけ一致させたい時に使うことができます。