CSS复合选择器
复合选择器是由两个或多个基础选择器,通过不同的方式组合而成的,目的是为了可以选择更准确更精细的目标元素标签。
交集选择器
交集选择器由两个选择器构成,其中第一个为标签选择器,第二个为class选择器或ID选择器,两个选择器之间不能有空格.
p.类名{
color:red;
display:block
}
标签选择器后面跟类名
p#id名{
color:red;
display:block
}
标签选择器后面跟ID名
<p class="类名"> </p>
<p ID="id名"> </p>
交集选择器可以看成数学上的交集,实际工作中用的较少
并集选择器
并集选择器是各选择器通过逗号(,)连接而成,任何形式的选择器都可以作为并集选择器的一部分。当某些选择器定义的样式完全相同,或部分相同,就可以利用并集选择器为它们定义相同的CSS样式。
并集选择器中所有选择器都会执行后面样式。 如上图中.class,h3,div三个选择器都会执行颜色为红色。常用于多个选择器相同的声明。
后代选择器
后代选择器又称为包含选择器,用来选择元素及元素的后代,其写法就是把外层标签写在前面,内层标签写在后面,中间用空格分隔。当标签发生嵌套时,内层标签就成为外层标签的后代。
.mi-top-bar a{
height: 40px;
color: #B0B0B0;
line-height: 40px;
}
它能选择任何包含在内的所有标签,包括他的子孙后代。
子元素选择器
子元素选择器只能选择作为某元素子元素的元素。其写法就是把父级标签写在前面,子级标签写在后面,中间跟一个 进行连接。
.mi-logo>p{
position: absolute;
top: 72px;
left: 385px;
height: 12px;
}
和后代选择器对比可以看出子代选择器只能选择儿子类,他的孙子,重孙之类都不归他管
伪类选择器
伪类选择器用于向某些选择器添加特殊的效果。比如给链接添加特殊效果。
伪类选择器用冒号(:)表示如::link{ } , a:hover{ }
链接伪类选择器
-
:link /* 未访问的链接 */
-
:visited /* 已访问的链接 */
-
:hover /* 鼠标移动到链接上 */
-
:active /* 选定的链接 */
a { /* a是标签选择器 所有的链接 */
font-weight: 700;
font-size: 16px;
color: gray;
}
a:hover { /* :hover 是链接伪类选择器 鼠标经过 */
color: red; /* 鼠标经过的时候,由原来的 灰色 变成了红色 */
}