选择器知识点詳解

一. 选择器分类

选择器分为基础选择器复合选择器两个大类

  • 基础选择器是由单个选择器组成的
  • 基础选择器包括:标签选择器类选择器id选择器通配符选择器

基础选择器 

 1. 标签选择器

标签选择器(元素选择器)是指用HTML标签名称作为选择器,按标签名称分类,为页面中某一类标签指定统一的CSS样式。

语法

标签名 {

       属性1:属性值1;

       属性2:属性值2;

       . . .

}

作用 

标签选择器可以把某一类标签全部选择出来,比如所有的

标签。

优点

能快速为页面中同类型的标签统一设置样式。

缺点

不能设计差异化样式,只能选择全部的当前标签。

2. 类选择器

如果想要差异化选择不同的标签,单独选一个或者某几个标签,可以使用类选择器。

语法

.类名 {

        属性1: 属性值1;

        属性2: 属性值2;

        . . .

}

例如,将所有拥有red类的HTML元素均设置为红色。

.red {

        color: red;

结构需要用class属性来调用class类

变红色
 

类选择器特殊使用-多类名 
(1) 多类名的使用方式
  • 在标签class属性中写多个类名
  • 多个类名中间必须用空格分开

亚瑟

(2) 多类名开发中使用场景
  • 可以把一些标签元素相同的样式(共同部分)放到一个类里面。
  • 这些标签都可以调用这个公共的类,然后再调用自己独有的类。
  • 节省CSS代码,统一修改非常方便。
注意

类选择器使用"."(英文点号)进行标识,后面紧跟类名(类名自定义)。

长名称或词组可以使用中横线来为选择器命名。

不使用纯数字、中文等命名,尽量使用英文字母来表示。

命名要有意义,尽量使别人一眼就知道这个类名的目的。 

3. id选择器 

id选择器可以为标有特定id的HTML元素指定特定的样式。

HTML元素以id属性来设置id选择器,CSS中id选择器以"#"来定义。

语法

#id名 {

        属性1:属性值1;

        . . .

}

例如,将id为nav元素中的内容设置为红色。

#nav {

        color: red;

id选择器和类选择器的区别 
  • 类选择器(class)好比人的名字,一个人可以有多个名字,同一个名字可以被多个人使用。
  • id选择器好比人的身份证号码,全中国唯一的,不得重复。
  • id选择器和类选择器最大的不同在于使用次数上(id选择器只能使用一次,类选择器可以被多次使用)
  • 类选择器在修改样式中用的最多,id选择器一般用于页面唯一性的元素上,经常和JavaScript搭配使用 

4.通配符选择器 

在CSS中,通配符选择器使用"*"定义,它表示选取页面中所有元素(标签)

语法

* {

    属性1:属性值1;

    . . .

}

  • 通配符选择器不需要调用,自动就给所有的元素使用样式。
  • 特殊情况才使用,如:消除所有元素的内外边距。 

* {

    margin: 0;

    padding: 0;

复合选择器 

复合选择器是建立在基础选择器之上,对基础选择器进行组合形成的。

  • 复合选择器可以更准确、更高效的选择目标元素(标签)
  • 复合选择器是由两个或多个基础选择器,通过不同的方式组合而成的。
  • 常用的复合选择器包括 :后代选择器、子选择器、并集选择器、伪类选择器等等

1.后代选择器 

后代选择器又称为包含选择器,可以选择父元素里面的子元素。其写法就是把外层标签写在前面,内层标签写在后面,中间用空格分隔。当标签发生嵌套时,内层标签就成为外层标签的后代。

语法 

元素1 元素2 {

        样式声明

}

上述语法表示选择元素1里面的所有元素2(后代元素)。

例如:

ul li { 样式声明 }    /* 选择ul 里面的所有li标签元素 */ 

  • 元素1和元素2中间用空格隔开
  • 元素1是父级,元素2是子级,最终选择的是元素2
  • 元素2可以是儿子,也可以是孙子等,只要是元素1的后代即可
  • 元素1和元素2可以是任意基础选择器 

2. 子选择器 

子元素选择器(子选择器)只能选择作为某元素的最近一级子元素,简单理解就是只能选亲儿子。

语法

元素1 > 元素2 { 样式声明 }

上述语法表示选择元素1里面的所有直接后代(子元素)元素2

例如:

div > p { 样式声明 }  /* 选择div里面所有最近一级p标签元素 */ 

元素1和元素2中间用大于号隔开

元素1是父级,元素2是子级,最终选择的是元素2

元素2必须是亲儿子,其孙子、重孙之类都不归他管。 

3. 并集选择器

并集选择器可以选择多组标签,同时为它们定义相同的样式。通常用于集体声明。

并集选择器是各选择器通过英文逗号(,)连接而成,任何形式的选择器都可以作为并集选择器的一部分

语法

元素1, 元素2 { 样式声明 }

上述语法表示选择元素1 和 元素 2.

例如:

ul, div, pig > li { 样式声明 } /* 选择 ul 和 div 标签元素 */ 

  • 元素1和元素2中间用逗号隔开
  • 逗号可以理解为和的意思
  • 并集选择器通常用于集体声明 

4. 伪类选择器 

伪类选择器用于向某些选择器添加特殊的效果,比如给链接添加特殊效果,或选择第1个,第n个元素。

伪类选择器书写最大的特点是用冒号(:)表示,比如 :hover、:first-child

因为伪类选择器很多,比如有链接伪类、结构伪类等

(1)链接伪类选择器

a:link                            /*选择所有未被访问的链接*/

a:visited                       /*选择所有已被访问的链接*/

a:hover                        /*选择鼠标指针位于其上的链接*/

a:active                       /*选择活动链接(鼠标按下未弹起的链接)*/ 

 链接伪类选择器注意事项
  1. 为了确保生效,请按照LVHA的顺序声明 :ling、:visited、:hover、:active
  2. 记忆法:love hate或者lv 包包 hao
  3. 因为a链接在浏览器中具有默认样式,所以我们实际工作中都需要给链接单独指定样式



    
    复合选择器之链接伪类选择器
    



    电玩小子


 链接伪类选择器开发过程中常用写法



    
    复合选择器之链接伪类选择器
    



    链接伪类开发过程中常用的写法


 (2):focus伪类选择器

:focus伪类选择器用于选取获得焦点的表单元素。

焦点就是光标,一般情况类表单元素才能获取,因此这个选择器也主要针对表单元素来说

input:focus {
    background-color: #fffd1a;
}

 

你可能感兴趣的:(前端3剑客,前端,css)