<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">単純選択子列</anchor>の間に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">空白</anchor>だけを置くことによって表現される<dfn><rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><anchor>子孫結合子</anchor><rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">descendant combinator</rt></rubyb></dfn>は、
前の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">単純選択子列</anchor>によって表される<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>の<strong><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">子孫</anchor></strong>であって後の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">単純選択子列</anchor>で表される<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>を表す<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">結合子</anchor>です。</p><section><h1>仕様書</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <cite xml:lang="en">Selectors Level 3</cite> (<time>2011-09-29 22:16:17 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/selectors/#descendant-combinators" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/TR/selectors/#descendant-combinators</anchor-external></li></ul></refs></section><section><h1>歴史</h1><section><h1>草創期</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[19]</anchor-end> <cite>Cascading Style Sheets: a draft specification</cite> (<time>1995-05-31 21:05:57 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/Style/CSS/draft1.html#document-wide" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/Style/CSS/draft1.html#document-wide</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="18" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[18]</anchor-end> <cite>Cascading Style Sheets: a draft specification</cite> (<time>1995-07-05 16:06:10 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/Style/CSS/draft2.html#context" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/Style/CSS/draft2.html#context</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[17]</anchor-end> <cite>Cascading Style Sheets: a draft specification</cite> (<time>1995-08-11 17:13:22 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/Style/CSS/draft3.html#introduction1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/Style/CSS/draft3.html#introduction1</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[21]</anchor-end> <cite>Cascading Style Sheets, level 1</cite> (<time>1995-11-18 13:20:39 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/Style/CSS/draft6.html#context" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/Style/CSS/draft6.html#context</anchor-external></li></ul></refs><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[20]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="19" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;19</anchor-internal> や <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="18" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;18</anchor-internal> は現在の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">子孫結合子</anchor>と同様の構文ですが、 <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;17</anchor-internal> 以降の案では<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">先祖</anchor>の方を
<code class="CSS">(</code> と <code class="CSS">)</code> で括る構文になっています。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="22" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[22]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="21" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;21</anchor-internal> では <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS1</anchor> に含まれるものの optional とされています。</p></section><section><h1>CSS1</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="23" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[23]</anchor-end> <cite>Cascading Style Sheets, level 1</cite> (<time>1999-02-05 02:57:01 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/WD-css1-951209.html#context" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/TR/WD-css1-951209.html#context</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="26" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[26]</anchor-end> <cite>Cascading Style Sheets, level 1</cite> (<time>1999-02-05 02:41:01 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/WD-css1-960220.html#context-sensitive-selectors" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/TR/WD-css1-960220.html#context-sensitive-selectors</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="25" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[25]</anchor-end> <cite>Cascading Style Sheets, level 1</cite> (<time>2000-09-23 08:23:45 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/WD-css1-960726.html#contextual-selectors" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/TR/WD-css1-960726.html#contextual-selectors</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> <cite>Cascading Style Sheets, level 1</cite> (<time>2008-04-10 02:23:32 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/CSS1/#contextual-selectors" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/TR/CSS1/#contextual-selectors</anchor-external></li></ul></refs><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="24" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[24]</anchor-end> <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="23" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;23</anchor-internal> で <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;20</anchor-internal> の構文から、現在の構文に変わりました。
<anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="25" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;25</anchor-internal> までには用語も<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文脈的選択子</anchor>に変わっています。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> この頃は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">結合子</anchor>という概念はなく、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文脈的選択子</anchor>の機能として<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">子孫結合子</anchor>に相当するものが説明されていました。</comment-p></section><section><h1>CSS2</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end> <cite xml:lang="en">Selectors</cite> (<time>2001-01-16 00:22:58 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/1998/WD-css2-19980128/selector.html#descendant-selectors" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/TR/1998/WD-css2-19980128/selector.html#descendant-selectors</anchor-external></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <cite xml:lang="en">Selectors</cite> (<time>2011-06-07 22:09:52 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/TR/CSS2/selector.html#descendant-selectors" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://www.w3.org/TR/CSS2/selector.html#descendant-selectors</anchor-external></li></ul></refs><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS2</anchor> で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">結合子</anchor>という概念が導入され、他に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">子孫結合子</anchor>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">隣接兄弟結合子</anchor>が追加されました。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> 初出は <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;15</anchor-internal> で、その前は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS1</anchor> 風の定義でした。</comment-p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS2</anchor> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">単純選択子列</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS2</anchor> でいう<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">単純選択子</anchor>) の後に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">子孫結合子</anchor>が続き、
更に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">単純選択子列</anchor>が並ぶ列のことを<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">子孫選択子</anchor>と呼んでいました。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> この用語は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">選択子3</anchor>では使われていません。</comment-p></section><section><h1>選択子3</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">選択子3</anchor>では特に変更はありませんでした。</p></section><section><h1>XBL2</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> <cite xml:lang="en-US">XBL 2.0</cite> (<time>2010-09-03 10:10:02 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://dev.w3.org/2006/xbl2/Overview.html#selectors-and-shadow-scopes" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI">http://dev.w3.org/2006/xbl2/Overview.html#selectors-and-shadow-scopes</anchor-external></li></ul></refs><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XBL2</anchor> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">影木</anchor>との関係を規定していました。</p></section></section><section><h1>例</h1><example xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><p xmlns="http://www.w3.org/1999/xhtml"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> 例えば<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">選択子</anchor><pre class="CSS example code">h1 em</pre><p>... は、 <code class="HTMLe" xml:lang="en">h1</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">子孫</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">子要素</anchor>、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">孫要素</anchor>、...)
である <code class="HTMLe" xml:lang="en">em</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>を表します。</p></p><p xmlns="http://www.w3.org/1999/xhtml"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">子孫</anchor>はあくまで1つの<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書木</anchor>の中での関係なので、例えば <code class="HTMLe" xml:lang="en">h1</code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">子孫</anchor>に <code class="HTMLe" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">iframe</anchor></code>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>があってそこに含まれる<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</anchor>に <code class="HTMLe" xml:lang="en">em</code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor>があったとしても、
それはこの<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">選択子</anchor>とは一致しません。</p></example></section><section><h1>関連</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">子供結合子</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">孫要素</anchor>以下ではなく<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">子要素</anchor>にだけ一致させたい時に使うことができます。</p></section></body></html>