1.后代选择器
后代选择器又称包含选择器,可以选择某元素后代的元素
-
语法:
E F { 样式声明; }
-
描述:【空格】连接一个或多个选择器
-
作用: 选择E元素内部包含的所有F元素
/* .warp 范围内所有的span都有效 */ .wrap span { color: tomato; } <div class="wrap"> <span>我是第一个span</span> <ul> <li> <span>我是第a二span个</span> </li> </ul> <span>我是第三个span</span> <div class="txt">div文本</div> </div>
2.子代选择器
子代选择器他只能选择他的子代范围内的选择器,也就是父子关系
-
语法
E > F { 样式声明; }
-
描述:【大于】号 连接一个或多个选择器
-
作用: 选择E元素内部包含的所有直接子元素F(第一嵌套层级)
父类选择器与子代选择器之间与大于号隔开 /* .warp 范围内所有的子元素span都有效 */ .wrap>span { color: tomato; } <div class="wrap"> <span>我是第一个span</span> <ul> <li> <span>我是第a二span个</span> </li> </ul> <span>我是第三个span</span> <div class="txt">div文本</div> </div> </div>
3.群组选择器
群组选择器是在样式表中有很多具有相同样式的元素,为了尽量减少代码,我们可以用群组选择器
群组选择器是将任意多个选择器分在一组,每个选择器之间用逗号隔开
-
语法
-
E,F {
样式声明;
}
- 描述:【逗号】连接一个或多个选择器
-
作用: 使用逗号分隔的列表来对选择器进行分组,给列表中每一个选择器选中的元素设置样式
-
选择器1,选择器2,选择器3{}; 选择器1和选择器2选择器3是都具有相同的样式的 选择器1和选择器2选择器3中间以逗号来隔开: 选择器1,选择器2,选择器 注意:最后一个选择器后面不用加逗号 h2, h3, h6, div, .box, #box2 { color: blue; } <h2>h2h2h2h2h2h</h2> <h3>h3h3h3h3h3</h3> <h6>h6h6h6h6h6h</h6> <div>divdivdiv</div> <div class="box">box111</div> <p id="box2">ppppp</p>
-
4.伪类链接选择器
用于添加特殊效果
-
语法
-
选择器:伪类{ }
-
用于设置链接的不同状态
-
a:link{ 链接的默认样式 } a:visited{ 链接访问过后的样式 } a:hover{ 鼠标悬停的样式 } a:active{ 鼠标按下的样式 } a:link { color: tomato; } a:visited { color: yellow; } a:hover { color: purple; } a:active { color: greenyellow; }
四个伪类状态都有效:L-v-H-a
-
:hover不仅可以表示链接的悬停,也可以用于其他标签中
-
/* 鼠标悬停到.box1盒上,让其本身的背景颜色变为蓝色 */ .box1:hover{ background-color: lightblue; } /* 鼠标悬停到.box2盒上,让p标签文字颜色变为红色 */ .box2:hover p{ color: red; } /* 鼠标悬停到.box3上,让p标签和h3标签的文字颜色都变为blue */ .box3:hover h3, .box3:hover p{ color: red; } .box3 :hover{ color: blue; }
5.相邻选择器
- 语法
-
-
示例:E+F{ 样式声明 } 用加号连接
-
描述:【加号】 连接一个或多个选择器
-
-
作用:E元素之后紧跟着的兄弟元素F
-
代码示例
.box + p{
background-color:red
}
<p>这个P元素不会被应用样式</p>
<div class="box">box</div>
<p>这个P元素会被应用样式</p>
<p>这个P元素不会被应用样式</p>