CSS 分组 和 嵌套 选择器
选择器分组
假设希望 h2 元素和段落都有灰色。为达到这个目的,最容易的做法是使用以下声明:
h2, p {color:gray;}
将 h2 和 p 选择器放在规则左边,然后用逗号分隔,就定义了一个规则。其右边的样式(color:gray;)将应用到这两个选择器所引用的元素。逗号告诉浏览器,规则中包含两个不同的选择器。如果没有这个逗号,那么规则的含义将完全不同。参见后代选择器。
可以将任意多个选择器分组在一起,对此没有任何限制。
例如,如果您想把很多元素显示为灰色,可以使用类似如下的规则:
body, h2, p, table, th, td, pre, strong, em {color:gray;}
提示:通过分组,创作者可以将某些类型的样式“压缩”在一起,这样就可以得到更简洁的样式表。
以下的两组规则能得到同样的结果,不过可以很清楚地看出哪一个写起来更容易:
/* no grouping */
h1 {color:blue;} h2 {color:blue;} h3 {color:blue;} h4 {color:blue;} h5 {color:blue;} h6 {color:blue;}
/* grouping */
h1, h2, h3, h4, h5, h6 {color:blue;}
实例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>实例</title>
<style type="text/css">
h1, h2, h3, h4, h5, p{
color:purple;
font-size:15px;
}
h2.special, .special, #one{
text-decoration:underline;
}
</style>
</head>
<body>
<h1>集体声明h1</h1>
<h2 class="special">集体声明h2</h2>
<h3>集体声明h3</h3>
<h4>集体声明h4</h4>
<h5>集体声明h5</h5>
<p>集体声明p1</p>
<p class="special">集体声明p2</p>
<p id="one">集体声明p3</p>
</body>
</html>嵌套选择器
使用规则小结:
1、id嵌套class #myid.myclass: <p id="sp" class="myclass"></p>。
2、一个元素标签使用多个class。.important.warning <p class="important warning">注意不要有空格 。有空格表示分别适用于两个class。
3、id标签内的class元素。#myid .myclass <div id="myid"><p class="myclass"></p></div>
4、元素标签下的class。p .myclass <p><span class="myclass"></span></p>
4、元素标签下的id。p #myid<p><span id="myid"></span></p>
5、class下的元素标签。 .myclass span <p class="myclass"><span>dd</span></p>
6、id标签内的id标签 #myid #myid2 <div id="myid"><div id="myid2"></div></div>。id的用法和元素标签类似。
7、.myclass1 .myclass2是表示两个class使用同一个样式,而不是嵌套。class也能嵌套class。但是若两个.myclass之间没有空格则表示同时拥有这两个class
8、元素标签嵌套元素标签 p span <p><span></span></p>
实例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>实例</title>
<style type="text/css">
#top {
background-color: #ccc;
padding: 1em
}
#top h1 {
color: #ff0;
}
#top p {
color: red;
font-weight: bold;
}
</style>
</head>
<body>
<div id="top">
<h1>Chocolate curry</h1>
<p>This is my recipe for making curry purely with chocolate</p>
<p>Mmm mm mmmmm</p>
</div>
</body>
</html>

哈哈哈
感觉一个选择器都好多的内容
8年前 添加回复 0