CSS选择器的作用
选择器(选择符)就是根据不同需求把不同的标签选出来这就是选择器的作用。简单来说,就是选择标签用的。
选择器分类
选择器分为基础选择器和复合选择器两个大类,我们这里先讲解一下基础选择器。·
基础选择器是由单个选择器组成的·
基础选择器又包括:标签选择器、类选择器、id选择器和通配符选择器
标签选择器(元素选择器)
是指用HTML标签名称作为选择器,按标签名称分类,为页面中某一类标签指定统一的CSS样式。
作用
标签选择器可以把某一类标签全部选择出来,比如所有的
优点
能快速为页面中同类型的标签统一设置样式。
缺点
不能设计差异化样式,只能选择全部的当前标签。
类选择器
如果想要差异化选择不同的标签,单独选一个或者某几个标签,可以使用类选择器.
注意
①类选择器使用“”(英文点号)进行标识,后面紧跟类名(自定义,我们自己命名的)。
②可以理解为给这个标签起了一个名字,来表示。
③ 长名称或词组可以使用中横线来为选择器命名。
④不要使用纯数字、中文等命名,尽量使用英文字母来表示。
⑤命名要有意义,尽量使别人一眼就知道这个类名的目的。
⑥命名规范:见附件(Web前端开发规范手册.doc)
多类名开发中使用场景
(1)可以把一些标签元素相同的样式(共同的部分)放到一个类里面.
(2)这些标签都可以调用这个公共的类然后再调用自己独有的类.
(3)从而节省CSS代码,统一修改也非常方便.
id选择器
id选择器可以为标有特定id的HTML元素指定特定的样式。HTML元素以id属性来设置id选择器,CSS中id选择器以“#”来定义。
id 选择器和类选择器的区别
①类选择器(class)好比人的名字,一个人可以有多个名字,同时一个名字也可以被多个人使用。id选择器好比人的身份证号码,全中国是唯一的,不得重复。
②id选择器和类选择器最大的不同在于使用次数上。id选择器只能使用一次
③类选择器在修改样式中用的最多id 选择器一般用于页面唯一性的元素上,经常和 JavaScript 搭配使用。
通配符选择器
在CSS中,通配符选择器使用“*”定义,它表示选取页面中所有元素(标签)。
语法
*{
属性1:属性值1;
}
·通配符选择器不需要调用,自动就给所有的元素使用样式·特殊情况才使用,后面讲解使用场景(以下是清除所有的元素标签的内外边距后
*{
margin: 0;
padding: 0;
}
复合选择器
在CSS中,可以根据选择器的类型把选择器分为基础选择器和复合选择器,复合选择器是建立在基础选择器之上,对基本选择器进行组合形成的。
后代选择器(重要)
后代选择器又称为包含选择器,可以选择父元素里面子元素。其写法就是把外层标签写在前面,内层标签写在后面,中间用空格分隔。当标签发生嵌套时,内层标签就成为外层标签的后代。
语法:
元素1 元素2{样式声明}
上述语法表示选择元素1里面的所有元素2(后代元素)。
- 元素1和元素2中间用空格隔开
- 元素1是父级,元素2是子级,最终选择的是元素2
- 元素2可以是儿子,也可以是孙子等,只要是元素1的后代即可
- 元素1和元素2可以是任意基础选择器
子选择器(重要)
子元素选择器(子选择器)只能选择作为某元素的最近一级子元素。简单理解就是选亲儿子元素.
语法:
元素1>元素2{样式声明}
上述语法表示选择元素1里面的所有直接后代(子元素)元素2。
并集选择器(重要)
并集选择器可以选择多组标签,同时为他们定义相同的样式。通常用于集体声明.
并集选择器是各选择器通过英文逗号(,)连接而成,任何形式的选择器都可以作为并集选择器的一部分。
语法:
元素1,元素2{样式声明}上述语法表示选择元素1和元素2。
例如:
ul,div{样式声明} /选择ul和div标签元素/·
- 元素1和元素2中间用逗号隔开·
- 逗号可以理解为和的意思
- 并集选择器通常用于集体声明
链接伪类选择器
伪类选择器用于向某些选择器添加特殊的效果,比如给链接添加特殊效果,或选择第1个,第n个元素。
伪类选择器书写最大的特点是用冒号(:)表示,比如:hover、:first-child。
因为伪类选择器很多,比如有链接伪类、结构伪类等,所以这里先给大家讲解常用的链接伪类选择器。
/选择所有未被访问的链接/
a:link
/选择所有已被访问的链接/
a:visited
/选择鼠标指针位于其上的链接/
a:hover
/选择活动链接(鼠标按下未弹起的链接)/
a:active
链接伪类选择器注意事项
1.为了确保生效,请按照LVHA的循顺序声明:link-:visited-:hover-:active。
2.记忆法:love hate或者lv包包hao。
3.因为a链接在浏览器中具有默认样式,所以我们实际工作中都需要给链接单独指定样式。
:focus伪类选择器:
focus 伪类选择器用于选取获得焦点的表单元素。焦点就是光标,一般情况<input:类表单元素才能获取,因此这个选择器也主要针对于表单元素来说。
input:focus{
background-color:yellow;
}
div:not(:first-child)
选出div中除了第一个div之外的元素