百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

「Web前端开发进阶篇」最详细的CSS选择器

toyiye 2024-08-25 15:38 4 浏览 0 评论

上一篇文章我们把「Web前端开发进阶篇」CSS定位和浮动讲解完了,接着我们来讲解下一篇文章,关于CSS选择器的内容知识,小伙伴们跟上我的节奏,动起来,Let's go!

【引言】

在学习CSS的过程中,选择器的便捷使用会让你在开发的过程中游刃有余,节省大量js代码的同时,让你的CSS代码变得精简,页面灵活度也会提高很多。

在CSS中,选择器是一种模式,就是选择你想添加样式的元素。选择器的类型居多,需要熟练使用才能让页面更加灵活,兼容性才不会出现很大的差异。

接下来让我详细的给大家介绍一下。

元素选择器

这是最常见的CSS元素选择器,就是拿文档的元素来作为最基本的选择器,说白了就是拿HTML标签来做选择器。例如:

如上图所示,我们直接拿文档的元素作为选择器来添加我们想要的样式。

类型选择器

使用类型选择器来匹配语言元素类型的名称,它会匹配文档树中该元素类型的每一个实例,说白了就是给文档树下选择的每一个元素添加一个统一的样式。不管是XML文档还是CSS文档都可以使用类型选择器来添加样式。例如:

如上图所示,我们直接选择给某一个类型的语言元素来添加我们想要的样式。

选择器分组

假设我们对不同的文档元素添加同一样式,要想达到这个目的,我们就可以用选择器分组来实现这个目的。例如:

我们可以将众多的选择器用逗号分开,就定义了一个规则,可以将任意多个选择器分组在一起,对此没有任何的限制,省去了大量的代码,也方便管理。就不用像下面这么写了。

1、通配型选择器

这是选择器分组里面的一种选择器 - 通配选择器,显示为一个星号(*)。该选择器可以与任何元素匹配,就像一个通配符。例如:

id*{margin:0;padding:0;}

2、声明分组

我们既可以对选择器进行分组,也可以对声明分组。说白了就是给选择器分开来写添加不一样的样式而已。就是说我给h1添加个字体颜色,在别的地方我给它添加个字体大小,这样有利于管理,在实际开发中用的也比较多。但是效率不高。我们将采用结合选择器和声明的分组的写法来写CSS,例如:

CSS类选择器

类选择器允许以一种独立于文档元素的方式来指定样式,可以单独适应,也可以结合其他元素结合使用。注意:只有适当地标记文档后,才可以使用这些选择器,这是最常用的,说白了就是只有给文档添加class才可以使用类选择器。

为了将类选择器的样式与元素关联,必须为Class制定一个适当的值,就是添加一个class。然后用class来指定样式。

可以为不同的元素指定同一个Class。然后通过选择器来添加样式,例如:

1、CSS多类选择器

就是说Class值里有多个Class值,我们用空格分开,用不同的值指定不同的样式。

注意:里面的值不分顺序。如果把两个类选择器连接在一起,仅可以选择同时包含这些类名的元素(顺序也不限)。例如:

CSS ID选择器

ID选择器跟类选择器差不多,就是给元素添加相应的ID才可以使用ID选择器,类选择器是引用Class值进行绑定添加样式,ID选择器是通过引用ID值进行绑定添加样式。例如:

1、与类选择器不同,需要区别注意:

区别1:ID只能在一个HTML文档中使用一次,ID选择器也会使用一次,而且仅一次。

区别2:不能使用ID词列表,就是说id="只能一个值",不允许有以空格分割的词列表。

区别3:ID能包含更多含义,就是说能对不同文档中的同一个ID进行元素匹配。相当于给所有的文档定义一个ID选择器,给他们添加样式。

2、区分大小

类选择器和 ID 选择器可能是区分大小写的。这取决于文档的语言。HTML 和 XHTML 将类和 ID 值定义为区分大小写,所以类和 ID 值的大小写必须与文档中的相应值匹配。

属性选择器

属性选择器可以根据元素的属性值来选择元素。比如图片的title属性,a标签的href,也可以是同时有title和href的拆链接,都可以用属性选择器添加样式。例如:

1、根据具体属性值选择

你也可以缩小选择范围,选择特定属性值的元素。可以是一个属性值也可以是多个特定的属性。可以是标签属性,也可以是XML文档的语言属性,更可以是元素的属性值,例如:

2、根据部分属性值

就像正则表达式一样,可以匹配相似的元素,比如说匹配属性值中的词列表的某个词,使用(~)号就可以匹配到,说白了,就是在众多的属性值中选择一个,然后进行匹配。

3、子串匹配属性选择器

这个更像正则表达式一样,去匹配我们相匹配的元素。

例如:如果希望对指向百度的所有链接应用样式,不必为所有这些链接指定 class,再根据这个类编写样式,而只需这样写:

a[href*="w3school.com.cn"] {color: red;}

4、特定属性选择类型

我们可以用特定属性选择类型来匹配语言值。例如:

在比如说你在文档中插入了一系列图片,其中图片的命名形如:picture-1、picture-2等等,就可以像这样进行匹配了,

总结一下属性选择器:灵活多运,用多了才不会出错。

后代选择器

简单说后代选择器可以选择作为某元素后代的元素。就是拿文档元素的层级关系作为选择器来添加样式,比如说,我先找div属性为Class值为important的元素,在找到它下面的h1元素,给他添加样式,例如:

后代选择器功能强大,也是最常用的,也是最简单易用的,实现了很多选择器不能实现的任务。

CSS 子元素选择器

如果你不希望选择任意的后代元素,只是某个元素的子元素,就可以使用它,如果有多个相同子元素,都能匹配到父元素里相同的子元素。我们通常用(>)大于号来表示。注意符号的两边允许有空格。例如:

选择作为 h1 元素子元素的所有 strong 元素:

CSS 相邻兄弟选择器

相邻兄弟选择器可选择紧接在另一元素后的元素,且二者有相同父元素就可以使用相邻兄弟选择器,还可以结合其他结合符,例如:

伪类

CSS 伪类用于向某些选择器添加特殊的效果。

1、锚伪类

在支持 CSS 的浏览器中,链接的不同状态都可以不同的方式显示,这些状态包括:活动状态,已被访问状态,未被访问状态,和鼠标悬停状态。例如:

2、:first-child伪类

2.1 可以使用 :first-child 伪类来选择元素的第一个子元素。

2.2 可以使用 :nth-child(n) 伪类来选择元素的第n个子元素。n也可以作为表达式,例如:n+1、2n、等数学表达式

2.3 可以使用 :first-of-type 伪类来选择元素的第一个子元素。(CSS3选择器,等同2.1)

2.4 可以使用 :nth-of-type(n) 伪类来选择元素的第n个子元素。n也可以作为表达式,例如:n+1、2n、等数学表达式,(CSS3选择器,等同2.2)

3、:lang 伪类

:lang 伪类使你有能力为不同的语言定义特殊的规则。

例如:

CSS 伪元素

CSS 伪元素用于向某些选择器设置特殊效果

1、:first-line 伪元素:用于向文本的首行设置特殊样式

2、:first-letter 伪元素:用于向文本的首字母设置特殊样式:

3、多重伪元素:可以结合多个伪元素来使用。

4、:before 伪元素:可以在元素的内容前面插入新内容。

5、:after 伪元素:可以在元素的内容之后插入新内容。

例如:

总结

CSS选择器灵活多运,用法也是相当的多,可以使用css对HTML页面中的元素实现一对一,一对多或者多对一的控制。多多使用练习,在开发中效率会提高不少,这也是前端开发必备的技能。


CSS选择器今天就讲解到这里了,下一篇讲解CSS高级语法,希望大家不要放弃学习哦!

PS:

本文为‘Web前端进阶指南’原创,手动码字不易,小伙伴们别忘了顺手点个赞加个关注哈,有什么不懂的下方留言评论或私信。谢谢大家哈!

相关推荐

# Python 3 # Python 3字典Dictionary(1)

Python3字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中,格式如...

Python第八课:数据类型中的字典及其函数与方法

Python3字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值...

Python中字典详解(python 中字典)

字典是Python中使用键进行索引的重要数据结构。它们是无序的项序列(键值对),这意味着顺序不被保留。键是不可变的。与列表一样,字典的值可以保存异构数据,即整数、浮点、字符串、NaN、布尔值、列表、数...

Python3.9又更新了:dict内置新功能,正式版十月见面

机器之心报道参与:一鸣、JaminPython3.8的热乎劲还没过去,Python就又双叒叕要更新了。近日,3.9版本的第四个alpha版已经开源。从文档中,我们可以看到官方透露的对dic...

Python3 基本数据类型详解(python三种基本数据类型)

文章来源:加米谷大数据Python中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。在Python中,变量就是变量,它没有类型,我们所说的"类型"是变...

一文掌握Python的字典(python字典用法大全)

字典是Python中最强大、最灵活的内置数据结构之一。它们允许存储键值对,从而实现高效的数据检索、操作和组织。本文深入探讨了字典,涵盖了它们的创建、操作和高级用法,以帮助中级Python开发...

超级完整|Python字典详解(python字典的方法或操作)

一、字典概述01字典的格式Python字典是一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。字典的每个键值key=>value对用冒号:分割,每个对之间用逗号,...

Python3.9版本新特性:字典合并操作的详细解读

处于测试阶段的Python3.9版本中有一个新特性:我们在使用Python字典时,将能够编写出更可读、更紧凑的代码啦!Python版本你现在使用哪种版本的Python?3.7分?3.5分?还是2.7...

python 自学,字典3(一些例子)(python字典有哪些基本操作)

例子11;如何批量复制字典里的内容2;如何批量修改字典的内容3;如何批量修改字典里某些指定的内容...

Python3.9中的字典合并和更新,几乎影响了所有Python程序员

全文共2837字,预计学习时长9分钟Python3.9正在积极开发,并计划于今年10月发布。2月26日,开发团队发布了alpha4版本。该版本引入了新的合并(|)和更新(|=)运算符,这个新特性几乎...

Python3大字典:《Python3自学速查手册.pdf》限时下载中

最近有人会想了,2022了,想学Python晚不晚,学习python有前途吗?IT行业行业薪资高,发展前景好,是很多求职群里严重的香饽饽,而要进入这个高薪行业,也不是那么轻而易举的,拿信工专业的大学生...

python学习——字典(python字典基本操作)

字典Python的字典数据类型是基于hash散列算法实现的,采用键值对(key:value)的形式,根据key的值计算value的地址,具有非常快的查取和插入速度。但它是无序的,包含的元素个数不限,值...

324页清华教授撰写【Python 3 菜鸟查询手册】火了,小白入门字典

如何入门学习python...

Python3.9中的字典合并和更新,了解一下

全文共2837字,预计学习时长9分钟Python3.9正在积极开发,并计划于今年10月发布。2月26日,开发团队发布了alpha4版本。该版本引入了新的合并(|)和更新(|=)运算符,这个新特性几乎...

python3基础之字典(python中字典的基本操作)

字典和列表一样,也是python内置的一种数据结构。字典的结构如下图:列表用中括号[]把元素包起来,而字典是用大括号{}把元素包起来,只不过字典的每一个元素都包含键和值两部分。键和值是一一对应的...

取消回复欢迎 发表评论:

请填写验证码