关于伪元素和伪类的区分
来源: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中伪类和伪元素的语法不同,可以同时使用多个伪类,而只能同时使用一个伪元素;
常见的伪类:
伪元素:
希望可以帮到你!
相似问题