css选择器
                CSS选择器
1.常用选择器
1.1 通用选择器
将匹配文档的所有元素
1  | *{  | 
1.2 元素选择器
按照给定的节点名称,选择所有匹配的元素
1  | div{  | 
1.3 类选择器
选择所有拥有给定类名的元素
1  | .box{  | 
1.4 ID选择器
按照 id 属性选择一个与之匹配的元素。需要注意的是,一个文档中,每个 ID 属性都应当是唯一的。
1  | #box{  | 
1.5 属性选择器
按照给定的属性和属性值,选择所有匹配的元素。
1  | /* 选择所有具有 `type` 属性的元素 */  | 
1.6 伪类选择器
CSS伪类是用来添加一些选择器的特殊效果。
基本语法
1  | selector:pseudo-class {property:value;}  | 
1  | a:link {color:#FF0000;} /* 未访问的链接 */  | 
伪类和css配合使用
1  | a.red:visited {color:#FF0000;}  | 
匹配第一个p元素
1  | p:first-child  | 
1.7 伪元素选择器
CSS 伪元素是一种特殊的选择器,它可以在不改变 HTML 结构的情况下对页面元素的特定部分进行样式设置。
- 基本语法
 
1  | selector::pseudo-element {  | 
- ::after
 
在所选元素的内容之后插入内容。
1  | p::after {  | 
- ::before
在所选元素的内容之前插入内容。
1
2
3p::before {
content: "这是在段落之前插入的内容 - ";
} 
2.选择器组合
2.1分组选择器
选择器分组是指使用逗号分隔的多个选择器,它们具有相同的样式规则。
1  | /**p标签和span标签字体颜色都为红色 */  | 
2.2组合器
2.2.1 后代选择器
“ ”(空格)组合器选择前一个元素的后代节点。
1  | /**选择p标签中所有span标签 */  | 
2.2.2 直接子代选择器
“>” 组合器选择前一个元素的直接子代的节点。
1  | /**选择div标签中所有span标签 */  | 
2.2.3 相邻兄弟选择器
“+” 组合器选择前一个元素的直接相邻兄弟节点。
1  | div + p{  | 
2.2.4 通用兄弟选择器
“~” 组合器选择前一个元素的所有兄弟节点。
1  | p ~ span {  | 
3.选择器优先级
第一等级:代表内联样式,如style=””,权值为 1000
第二等级:代表id选择器,如#content,权值为100
第三等级:代表类,伪类和属性选择器,如.content,权值为10
第四等级:代表标签选择器和伪元素选择器,如div p,权值为1
注意:通用选择器(*),子选择器(>),和相邻同胞选择器(+)并不在这个等级中,所以他们的权值为0