1

这个选择器没有像我预期的那样工作:

<style type="text/css">
    .someClass p, b {
        color:red;
        cursor : pointer;
    } 
</style>
<p>This is a test</p>
<p>This is another <b>test</b></p>
<p class="someClass">This is a test with someClass</p>
<p>This is another <b class="someClass">test</b></p>

结果和jsFiddle 非样式段落和样式的文本显示为黑色。带有类“someClass”的文本p没有显示为红色文本,但是b带有类“someClass”的文本确实显示为红色。

问题: 为什么pclass="someClass" (第三段)没有显示为红色,而bclass="someClass" (第四段)显示为红色?

两个标签都包含在 someClass 选择器中。我在通过搜索找到答案时运气不佳,并且文档似乎没有解决这个确切的情况

4

1 回答 1

5

如果您希望您的样式适用于b带有 class 的段落和元素someClass,请使用

p.someClass, b.someClass {
    color: red;
    cursor: pointer;
}

您现有的选择器目标

  • 任何b元素
  • 具有 class 的元素内的段落someClass

这段代码:

.someClass p, b { something }

是相同的

.someClass p { something }
b { something }
于 2013-02-04T15:57:43.897 回答