区别伪类和伪元素

最近学习遇到伪类和伪元素,有些混淆,看了些博客,自己再总结一下。

首先描述一下w3c对两者的定义:CSS伪类用于向某些选择器添加特殊的效果;CSS伪元素用于将特殊的效果添加到选择器上。两者目标都是元素样式改变。例子如下:

伪类:举例 first-child是给第一个子元素添加效果

区别伪类和伪元素_第1张图片

如果不用伪类可以用下面类样式:

区别伪类和伪元素_第2张图片

可以看出,伪类的实现效果可以用其他具体的类样式实现。

伪元素:举例:before和after是在一个元素之前和之后添加内容

区别伪类和伪元素_第3张图片    区别伪类和伪元素_第4张图片

可以看出,在P元素内容中的首部和尾部插入了before和after;想达到同样的效果,可以用添加标签元素解决。

从根本上看区别,伪类的效果可以通过一个其他具体的类实现;伪元素的效果可以通过添加一个实际的元素达到。

两者写法区别:伪类  :first-child      伪元素   ::before

 

你可能感兴趣的:(前端笔记)