这个CSS规则中的
+
符号是什么意思?h2 + p {
font-size: 1.4em;
font-weight: bold;
color: #777;
}
+
符号是什么意思?h2 + p {
font-size: 1.4em;
font-weight: bold;
color: #777;
}
+
是相邻兄弟选择器。
这意味着选择器h2 + p
只选择紧随在h2
后面的p
。
下面是一个示例:
<h2>Headline!</h2>
<p>The first paragraph.</p> <!-- Selected [1] -->
<p>The second paragraph.</p> <!-- Not selected [2] -->
<h2>Another headline!</h2>
<blockquote>
<p>A quotation.</p> <!-- Not selected [3] -->
</blockquote>
选中的内容和未选中的内容:
选中的
这个p
紧接在第一个h2
后面。
未选中的
这个p
出现在第一个p
之后,而不是h2
。由于它不是紧接着h2
出现的,所以它没有被选中。
然而,由于它仍然跟在h2
元素后面,只是不是立即跟着,所以选择器h2 + p
将无法匹配此元素,但使用通用兄弟选择器h2 ~ p
将匹配。
未选中的
这个p
位于blockquote
内部,并且在引用内部没有h2
来满足其选择器。
h2
元素之后的所有p
元素。因此,下一个p
元素将被设置样式:<h2>A heading</h2>
<p>This paragraph will be styled.</p>
<h2>A heading</h2>
<hr>
<p>This paragraph will NOT be styled.</p>
<p>This paragraph will NOT be styled.</p>
<h2>A heading</h2>
...or this:
<h2>A heading</h2>
<section>
<p>This paragraph will NOT be styled.</p>
</section>
它选择所有直接位于h2标签旁边的P标签。然后将其赋予所述属性。
只影响直接跟在H2后面的第一个p标签
示例1:
<h2></h2>
<p></p> <!-- THIS ONE IS AFFECTED -->
<p></p> <!-- THIS ONE IS NOT AFFECTED -->
<p></p> <!-- NOR THIS ONE -->
<p></p> <!-- NOR THIS ONE -->
<p></p> <!-- ETC -->
例子2:
<h2></h2>
<div></div>
<p></p> <!-- THIS ONE IS NOT AFFECTED -->