时间:2021-05-08
首先,阅读 w3c 对两者的定义:
CSS 伪类用于向某些选择器添加特殊的效果。CSS 伪元素用于将特殊的效果添加到某些选择器。可以明确两点,第一两者都与选择器相关,第二就是添加一些“特殊”的效果。这里特殊指的是两者描述了其他 css 无法描述的东西。
伪类种类伪元素种类区别这里用伪类 :first-child 和伪元素 :first-letter 来进行比较。
//伪类 :first-child 添加样式到第一个子元素
如果我们不使用伪类,而希望达到上述效果,可以这样做:
即我们给第一个子元素添加一个类,然后定义这个类的样式。那么我们接着看看为元素:
//伪元素 :first-letter 添加样式到第一个字母
那么如果我们不使用伪元素,要达到上述效果,应该怎么做呢?
即我们给第一个字母添加一个 span,然后给 span 增加样式。
两者的区别已经出来了。那就是:
伪类的效果可以通过添加一个实际的类来达到,而伪元素的效果则需要通过添加一个实际的元素才能达到,这也是为什么他们一个称为伪类,一个称为伪元素的原因。
总结伪元素和伪类之所以这么容易混淆,是因为他们的效果类似而且写法相仿,但实际上 css3 为了区分两者,已经明确规定了伪类用一个冒号来表示,而伪元素则用两个冒号来表示。
:Pseudo-classes::Pseudo-elements但因为兼容性的问题,所以现在大部分还是统一的单冒号,但是抛开兼容性的问题,我们在书写时应该尽可能养成好习惯,区分两者。
简单的说呢:伪元素的权重比伪类高,比如一个容器的为元素和伪类都定义了同一属性,但值不一样,那么将采用伪元素的。 从规范的角度伪元素一个页面只使用一次,而伪类可以多次使用。伪元素产生新对象,在Dom中看不到,但是可以操作;伪类是Dom中一个元素的不同状态;
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本教程简单的介绍一下关于CSS伪类:before,:after详解,有需要了解的朋友可以参考一下下。:before伪元素在元素之前添加内容这个伪元素允许创作人员
CSS控制元素的某种状态---伪类(用于向某些选择器添加特殊的效果)伪类的语法:元素标签伪类名称{属性:属性值;}a:link:未访问的链接a:hover:鼠标
注:该表引自W3School教程伪元素的分类及作用:下面通过代码看下CSS伪类修改input选中样式的示例代码,代码如下所示:主要是用到了after伪类和字体符
第一部分:基础知识1.与:active和:hover这些伪类不一样,他们都是伪元素。2.:before/:after伪元素是在css2中提出来的。而::befo
一、CSS3:default伪类选择器简介CSS3:default伪类选择器只能作用在表单元素上,表示默认状态的表单元素。举个例子,一个下拉框,可能有多个选项,