天天看点

css中伪类与伪元素的区别

看了网上的有助于理解css中伪类与伪元素区别的帖子,做了如下笔记:

一:定义:

1.css伪类用于向某些选择器添加特殊的效果 2.css伪元素用于将特殊的效果添加到某些选择器 3.都是向选择器添加特殊效果的(即用css无法描述的效果)

二:理解: a.  伪类的效果是通过给要加特殊样式的元素,增加一个类来完成实现的 伪元素的效果是通过给要加特殊样式的内容加一个元素来实现的 b. 伪类的效果可以通过添加一个实际的类来达到; 而伪元素的效果则需要添加一个实际的元素才能达到;

c     eg:first-child(伪类) first-letter(伪元素) 为了实现first-child的效果,实际上也相当于伪造了一个元素,将首字母放到该元素中,然后再添加样式来实现效果; 而first-child 就相当于直接给自己的第一个元素添加样式,并不需要伪造一个新的元素

d    first-child 的作用就像一个类名,它只是把你的想要的元素区别出来,那些元素本身就存在;       first-line则表现得像是“新建了一个元素”一样,以这样的形式去寻找你想要的内容;       所以,一个“像类”(伪类),一个“像元素”(伪元素)

e   伪类,首先是类的一种,作用域标签本身(状态)      伪元素,首先是元素,作用于内容本身

三:常见伪类与伪元素 伪类种类::active      :focus     :hover     :link    :visited   :first-child   :lang 伪元素种类: :first-letter :first-line :before :after