本文向大家描述一下CSS派生选择器的概念和使用,通过依据元素在其位置的上下文关系来定义样式,你可以使标记更加简洁,在CSS1中,通过这种方式来应用规则的选择器被称为上下文选择器,而在CSS2中,它们称为CSS派生选择器。
CSS派生选择器
通过依据元素在其位置的上下文关系来定义样式,你可以使标记更加简洁。
在CSS1中,通过这种方式来应用规则的选择器被称为上下文选择器(contextualselectors),这是由于他们依赖于上下文关系来应用或者避免某项规则。在CSS2中,它们称为CSS派生选择器,但是无论你如何称呼它们,它们的作用都是相同的。
CSS派生选择器允许你根据文档的上下文关系来确定某个标签的样式。通过合理地使用CSS派生选择器,我们可以使HTML代码变得更加整洁。
◆比方说,你希望列表中的strong元素变为斜体字,而不是通常的粗体字,可以这样定义一个CSS派生选择器:
- listrong{
- font-style:italic;
- font-weight:normal;
- }
请注意标记为<strong>的蓝色代码的上下文关系:
- <p><strong>我是粗体字,不是斜体字,因为我不在列表当中,所以这个规则对我不起作用</strong></p>
- <ol>
- <li><strong>我是斜体字。这是因为strong元素位于li元素内。</strong></li>
- <li>我是正常的字体。</li>
- </ol>
在上面的例子中,只有li元素中的strong元素的样式为斜体字,无需为strong元素定义特别的class或id,代码更加简洁。
◆再看看下面的CSS规则:
- strong{
- color:red;
- }
- h2{
- color:red;
- }
- h2strong{
- color:blue;
- }
下面是它施加影响的HTML:
- <p>Thestronglyemphasizedwordinthisparagraphis<strong>red</strong>.</p>
- <h2>Thissubheadisalsored.</h2>
- <h2>Thestronglyemphasizedwordinthissubheadis<strong>blue</strong>
文章出处:标准之路(http://www.aa25.cn/css2/derive562.shtml)
【编辑推荐】