--- title: 子选择器 slug: Web/CSS/Child_combinator tags: - CSS - Selectors translation_of: Web/CSS/Child_combinator --- <p>{{ CSSRef() }}</p> <h2 id="Summary" name="Summary">概述</h2> <p>当使用 <code>></code> 选择符分隔两个元素时,它只会匹配那些作为第一个元素的<strong>直接后代<span style="line-height: 21px;">(</span></strong><span style="line-height: inherit;">子元素)的第二元素. 与之相比, 当两个元素由 </span><a href="/en/CSS/Descendant_selectors" style="line-height: inherit;" title="https://developer.mozilla.org/en/CSS/Descendant_selectors">后代选择器 </a>相连时<span style="line-height: inherit;">, 它表示匹配存在的所有由第一个元素作为祖先元素(但不一定是父元素)的第二个元素, 无论它在 DOM 中"跳跃" 多少次.</span></p> <h2 id="Syntax" name="Syntax">语法</h2> <pre class="eval">元素1 > 元素2 {<em>样式声明</em> } </pre> <h2 id="Examples" name="Examples">示例</h2> <pre class="brush: css">span { background-color: white; } div > span { background-color: DodgerBlue; } </pre> <p>当应用与如下标记时:</p> <pre class="brush: html"><div> <span>Span 1. In the div. <span>Span 2. In the span that's in the div.</span> </span> </div> <span>Span 3. Not in a div at all</span> </pre> <p>会得到下面的效果:</p> <p style="margin-left: 40px;"><span style="background-color: DodgerBlue;">Span 1. In the div.</span> <span>Span 2. In the span that's in the div.</span><br> <span>Span 3. Not in a div at all.</span></p> <h2 id="Specifications" name="Specifications">规范</h2> <table class="standard-table"> <thead> <tr> <th scope="col">Specification</th> <th scope="col">Status</th> <th scope="col">Comment</th> </tr> </thead> <tbody> <tr> <td><a class="external" href="http://www.w3.org/TR/css3-selectors/#child-combinators">CSS Selectors Level 3</a></td> <td>{{ Spec2('CSS3 Selectors') }}</td> <td> </td> </tr> <tr> <td><a class="external" href="http://www.w3.org/TR/CSS21/selector.html#child-selectors">CSS 2.1</a></td> <td>{{ Spec2('CSS2.1') }}</td> <td> </td> </tr> </tbody> </table> <h2 id="浏览器兼容性">浏览器兼容性</h2> {{Compat("css.selectors.child")}} <h2 id="相关">相关</h2>