关于伪元素和伪类的区分

来源:2-44 伪元素first-line(一)

qq_慕村9245204

2019-05-11 13:13:06

老师您好,我对视频中伪类和伪元素的区分有点不明白,比如伪类:hover似乎也符合视频中老师对伪元素的解释呀?请老师指点

写回答

1回答

樱桃小胖子

2019-05-11

1、伪类的定义:

伪类用于选择DOM树之外的信息,或是不能用简单选择器进行表示的信息。前者包含那些匹配指定状态的元素,比如:visited,:active;后者包含那些满足一定逻辑条件的DOM树中的元素,比如:first-child,:first-of-type,:target。

2、伪元素的定义:

伪元素为DOM树没有定义的虚拟元素。不同于其他选择器,它不以元素为最小选择单元,它选择的是元素指定内容。比如::before表示选择元素内容的之前内容,也就是"";::selection表示选择元素被选中的内容。

注意:在CSS3中,伪类与伪元素在语法上也有所区别,伪元素修改为以::开头。但因为历史原因,浏览器对以:开头的伪元素也继续支持,但建议规范书写为::开头

3、伪类与伪元素的区别:

(1)伪类本质上是为了弥补常规CSS选择器的不足,以便获取到更多信息;

(2)伪元素本质上是创建了一个有内容的虚拟容器;

(3)CSS3中伪类和伪元素的语法不同,可以同时使用多个伪类,而只能同时使用一个伪元素;

常见的伪类:

http://img.mukewang.com/climg/5cd67b830001705d05851024.jpg

伪元素:

http://img.mukewang.com/climg/5cd67b98000154e205850199.jpg

希望可以帮到你!

0

0 学习 · 40143 问题

查看课程