以下是引用片段:
<style type="text/css">
td .b {
color:#00ff00
}
th.b {
color:#ff0000
font-family:黑体
font-size:20px
}
.b {
color:#0000ff
font-size:12px
}
</style>
<table>
<tr>
<td><div class="b">第一个类b的类路径是th .b</div></td>
<th class="b">第二个类b的类路径是th.b</td>
<td class="b">第三个类b的类路径是 .b</th>
</tr>
</table>
<div class="b">第三个类b的类路径是 .b</div>
比如下面这段代码:
<div class="aa bb"><p class="bb">
<span class="bb"></span>
</p>
</div>
选择器:.aa .bb
.aa和.bb间加上空格,是子选择器,选择.aa下含有.bb的子节点,子包括儿子节点、孙子节点,选择出的内容包括p.bb,span.bb
选择器: .aa.bb
.aa和.bb间无空格,是选择同一个元素,只不过选择器粒度更精细了些,选择的元素既有.aa类,也有.bb类,选择出的内容为:div.bb
选择器:.aa>.bb
.aa和.bb间加上大于号,也是子选择器,选择.aa下含有.bb的子节点,子只包括儿子节点,选择出的内容为p.bb
没有空格的话那是以什么分隔呢?逗号吗?如果两个class之间以空格分隔,则两个class之间是包含关系,或者说前一个class是后一个class的父元素或者祖先元素(也可以说后一个class是前一个class的子元素或后代元素),样式将作用在后一个class上。
如果两个class之间以逗号分割,则两个class之间是平等关系(跟它们的实际关系无关),样式将同时作用在两个class上。