选择器分为基础选择器和复合选择器两个大类,我们这里先讲解一下基础选择器。
基础选择器
基础选择器是由单个选择器组成的
基础选择器又包括∶标签选择器、类选择器、id选择器和通配符选择器。
标签名选择器
标签名 {
属性1: 属性值1;
属性2: 属性值2;
属性3: 属性值3;
}
类选择器
/* 类选择器口诀: 样式点定义 结构类(cLass)调用 一个或多个 开发最常用 */
.类名 {
属性1: 属性值1;
属性2: 属性值2;
属性3: 属性值3;
}
注意:
- 类选择器使用
.
(英文点号)进行标识,后面紧跟类名(自定义,我们自己命名的)。 - 可以理解为给这个标签起了一个名字。
- 长名称或词组可以使用中横线来为选择器命名。
- 不要使用纯数字、中文等命名,尽量使用英文字母来表示。
多类名
<head>
<style>
.box {
width: 150px;
height: 100px;
}
.red {
background-color: red;
}
.green {
background-color: green;
}
</style>
</head>
<body>
<div class="box red">红色</div>
<div class="box green">绿色</div>
<div class="box red">红色</div>
</body>
- 给某个标签添加了多个类,各个类名中间用
空格
隔开 - 这个标签就可以分别有这些类名的样式
- 从而节省CSS代码,统一修改也非常方便
- 多类名选择器在后期布局比较复杂的情况下,还是较多使用的
id 选择器
id 选择器可以为标有特定 id 的HTML元素指定特定的样式。
HTML元素以 id 属性来设置 id 选择器,CSS中 id 选择器以 #
来定义。
/*id选择器的口诀: 样式#定义,结构id调用,只能调用一次,被人切勿使用 */
#id名 {
属性1: 属性值1;
属性2: 属性值2;
属性3: 属性值3;
}
id 选择器和类选择器的区别
- 类选择器( class )好比人的名字,一个人可以有多个名字,同时一个名字也可以被多个人使用
- id 选择器好比人的身份证号码,全中国是唯一的,不得重复。
- id 选择器和类选择器最大的不同在于使用次数上。
- 类选择器在修改样式中用的最多, id选择器一般用于页面唯一性的元素上, 经常和JavaScript搭配使用。
通配符选择器
在CSS中,通配符选择器使用 *
定义,它表示选取页面中所有元素(标签)。
* {
属性1: 属性值1;
...
}
- 通配符选择器不需要调用,自动就给所有的元素使用样式
- 特殊情况才使用,以下是清除所有的元素标签的内外边距
* {
margin: 0;
padding: 0;
}
复合选择器
什么是复合选择器
在CSS中,可以根据选择器的类型把选择器分为基础选择器和复合选择器。
复合选择器是建立在基础选择器之上,对基本选择器进行组合形成的。
复合选择器可以更准确、更高效的选择目标元素(标签)。
复合选择器是由两个或多个基础选择器,通过不同的方式组合而成的。
常用的复合选择器包括︰后代选择器、子选择器、并集选择器、伪类选择器等等。
选择器 | 作用 | 特征 | 使用情况 | 隔开符号及用法 |
---|---|---|---|---|
后代选择器 | 用来选择后代元素 | 可以是子孙后代 | 较多 | 符号是空格.nav a |
子代选择器 | 选择最近一级元素 | 只选亲儿子 | 较少 | 符号是大于.nav>p |
并集选择器 | 选择某些相同样式的元素 | 可以用于集体声明 | 较多 | 符号是逗号.nav,.header |
后代选择器
后代选择器又称为包含选择器,可以选择父元素里面子元素。
其写法就是把外层标签写在前面,内层标签写在后面,中间用空格
分隔。
当标签发生嵌套时,内层标签就成为外层标签的后代。
语法︰
元素1 元素2 {
样式声明
}
上述语法表示选择元素1里面的所有元素2(后代元素)。
例如∶
ul li {样式声明} /* 选择ul里面所有的li标签元素 */
- 元素1和元素2中间用空格隔开
- 元素1是父级,元素2是子级,最终选择的是元素2
- 元素2可以是儿子,也可以是孙子等,只要是元素1的后代即可
- 元素1和元素2可以是任意基础选择器
子元素选择器
子元素选择器(子选择器)只能选择作为某元素的最近一级子元素。
语法∶
元素1 > 元素2 {样式声明}
上述语法表示选择元素1里面的所有直接后代(子元素)元素2。
例如∶
div > p {样式声明}
/* 选择div里面所有最近一级p标签元素 */
- 元素1和元素2中间用大于号
>
隔开 - 元素1是父级,元素2是子级,最终选择的是元素2
- 元素2必须是亲儿子,其孙子、重孙之类都不归他管。你也可以叫他亲儿子选择器
并集选择器
并集选择器可以选择多组标签,同时为他们定义相同的样式。通常用于集体声明。
并集选择器是各选择器通过英文逗号 ,
连接而成,任何形式的选择器都可以作为并集选择器的一部分。
语法∶
元素1,元素2 {样式声明}
上述语法表示选择元素1和元素2。
例如:
div,
p,
.pig li {
color: pink;
}
/* 选择 div、p 和 .pig li 元素 */
/* 约定的语法规范,我们并集选择器喜欢竖着写 */
/* 一定要注意,最后一个选择器 不需要加逗号 */
- 元素1和元素2中间用逗号
,
隔开 - 逗号可以理解为和的意思
- 并集选择器通常用于集体声明