目录
CSS基本选择器
标签选择器
HTML标签作为标签选择器的名称
<h1>…<h6>、<p>、<img/>
类选择器
一些特殊的实现效果,单纯使用标签选择器不能实现,从而引出类选择器
ID选择器
ID选择器的名称就是HTML中标签的ID名称,ID全局唯一
- 标签选择器直接应用于HTML标签
- 类选择器可在页面中多次使用
- ID选择器在同一个页面中只能使用一次
基本选择器的优先级:
ID选择器>类选择器>标签选择器
不遵循“就近原则”,无论是哪种方式引入CSS样式,一般都遵循ID选择器 > class类选择器 > 标签选择器的优先级
CSS高级选择器
层次选择器
后代选择器
body p{
background: red;
}
后代选择器两个选择符之间必须要以空格隔开,中间不能有任何其他的符号插入
子选择器
body>p{
background: pink;
}
相邻兄弟选择器
.active+p {
background: green;
}
通用兄弟选择器
.active~p{
background: yellow;
}
结构伪类选择器
<html>
<head lang="en">
<meta charset="UTF-8">
<title>使用CSS3结构伪类选择器</title>
</head>
<body>
<p>p1</p>
<p>p2</p>
<p>p3</p>
<ul>
<li>li1</li>
<li>li2</li>
<li>li3</li>
</ul>
</body>
</html>
ul li:first-child{ background: red;}
ul li:last-child{ background: green;}
p:nth-child(1){ background: yellow;}
p:nth-of-type(2){ background: blue;}
使用E F:nth-child(n)和E F:nth-of-type(n)的 关键点
- E F:nth-child(n)在父级里从一个元素开始查找,不分类型
- E F:nth-of-type(n)在父级里先看类型,再看位置
属性选择器
E[attr]
a[id] {
background: yellow;
}
E[attr=val]
a[id=first] {
background: red;
}
E[attr*=val]
a[class*=links] {
background: red;
}
E[attr^=val]
a[href^=http] {
background: red;
}
E[attr$=val]
a[href$=png] {
background: red;
}