Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >前端 | CSS 伪元素、伪类是什么?他们的区别在哪里你知道吗?

前端 | CSS 伪元素、伪类是什么?他们的区别在哪里你知道吗?

作者头像
倾盖
发布于 2022-08-16 06:25:45
发布于 2022-08-16 06:25:45
1.3K05
代码可运行
举报
文章被收录于专栏:RivenCabinRivenCabin
运行总次数:5
代码可运行

一、伪元素和伪类介绍

什么是伪元素?

伪元素 是一个附加至选择器末的关键词,允许你对被选择元素的特定部分修改样式。

eg:下例中的 ::first-line伪元素可改变段落首行文字的样式。

HTML:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<p class="content">
       我们在这里放一下段落abc <br>
       这是第二行<br>
       这是第三行
   </p>

CSS:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
.content::first-line {
      font-weight: bold;
      color: rebeccapurple;
      text-transform: uppercase;
  }

运行结果:

什么是伪类?

伪类 是添加到选择器的关键字,指定要选择的元素的特殊状态

​ eg:例如,**:hover** 可被用于在用户将鼠标悬停在按钮上时改变按钮的颜色。

HTML:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<button class="btn">按钮</button>

CSS:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
.btn:hover {
      color: blue;
}

运行结果:

注意:

  • 与伪类相比,伪类能够根据元素状态改变元素样式。
  • 一个选择器中只能使用一个伪元素。伪元素必须紧跟在语句中的简单选择器/基础选择器之后。
  • 按照规范,应该使用双冒号(::)而不是单个冒号(:),以便区分伪类和伪元素。但是,由于旧版本的 W3C 规范并未对此进行特别区分,因此目前绝大多数的浏览器都同时支持使用这两种方式来表示伪元素。

二、伪元素和伪类的区别

伪类选择元素基于的是当前元素处于的状态,或者说元素当前所具有的特性,而不是元素的id、class、属性等静态的标志。由于状态是动态变化的,所以一个元素达到一个特定状态时,它可能得到一个伪类的样式;当状态改变时,它又会失去这个样式。由此可以看出,它的功能和class有些类似,但它是基于文档之外的抽象,所以叫伪类。

与伪类针对特殊状态的元素不同的是,伪元素是对元素中的特定内容进行操作,它所操作的层次比伪类更深了一层,也因此它的动态性比伪类要低得多。实际上,设计伪元素的目的就是去选取诸如元素内容第一个字(母)、第一行,选取某些内容前面或后面这种普通的选择器无法完成的工作。它控制的内容实际上和元素是相同的,但是它本身只是基于元素的抽象,并不存在于文档中,所以叫伪元素。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
css篇-面试题6-伪类与伪元素的区别
伪类用于当已有元素处于的某个状态时,为其添加对应的样式,这个状态是根据用户行为而动态变化的。
itclanCoder
2020/10/28
1.6K0
css篇-面试题6-伪类与伪元素的区别
【 前端相关 网页样式 】总结CSS3中“伪类”与“伪元素”
熟悉前端的人都会听过css的伪类与伪元素,然而大多数的人都会将这两者混淆。本文从解析伪类与伪元素的含义出发,区分这两者的区别,并且列出大部分伪类与伪元素的具体用法,即使你有用过伪类与伪元素,但里面总有一两个你没见过的吧。 1.伪类与伪元素 先说一说为什么css要引入伪元素和伪类,以下是css2.1 Selectors章节中对伪类与伪元素的描述: CSS introduces the concepts of pseudo-elements and pseudo-classes to permit format
QUXINGDONG.COM
2018/04/17
3.5K0
【 前端相关 网页样式 】总结CSS3中“伪类”与“伪元素”
重新认识伪类和伪元素
熟悉前端的人都会听过css的伪类与伪元素,然而大多数的人都会将这两者混淆(包括我)。那今天就让我们来看看伪类和伪元素的区别吧!
ihoey
2018/10/31
1K0
30s告诉你【伪类】与【伪元素】的区别
CSS2 中伪类、伪元素都是以单冒号:表示,CSS2.1 后规定伪类用单冒号表示,伪元素用双冒号::表示,浏览器同样接受 CSS2 时代已经存在的伪元素(:before, :after, :first-line, :first-letter 等)的单冒号写法。对于 CSS2 之后所有新增的伪元素(如::selection),应该采用双冒号的写法。但是因为兼容性问题,大部分还是用的单冒号。
泯泷、
2024/03/17
1240
CSS3伪类和伪元素的特性和区别
前端er们大都或多或少地接触过CSS伪类和伪元素,比如最常见的:focus,:hover以及<a>标签的:link、visited等,伪元素较常见的比如:before、:after等。 其实上面提到的这些伪类和伪元素都是CSS1和CSS2中的概念,CSS1和CSS2中对伪类的伪元素的区别比较模糊,甚至经常有同行将:before、:after称为伪类。CSS3对这两个概念做了相对较清晰地概念,并且在语法上也很明显的讲二者区别开。 伪类 - pseudo classes 首先看看CSS2中对伪类的定义: CS
寒月十八
2018/01/30
1.1K0
CSS3伪类和伪元素的特性和区别
全栈之前端 | 2.CSS3基础知识之选择器学习
在上一章节,作者针对CSS选择器做了一个简单介绍有那些选择器, 本章将表中的选择器进行一一实践展示。
全栈工程师修炼指南
2023/10/31
2520
全栈之前端 | 2.CSS3基础知识之选择器学习
Web前端,认识css,css规格,伪类和伪元素的用法,代码详解!
认识 CSS — Cascading Style Sheets CSS的世界是神奇的。随着浏览器WEB标准的日趋统一,CSS在WEB世界中的扮演的角色也越来越重要。 我们从HTML开始,因为CSS的用途就是为了给HTML标记添样式,所以我们要先知道怎么去写HTML标签 什么是CSS HTML标记内容是为了给网页赋予纯粹的语义。换而言之就是为了让用户可以去理解里边的含义。每一个标签都是对所包含的内容的一种诠释,描述。所以请记住HTML 就是 文本+标记的一个文档结构(请不要参杂CSS)。当我们给内容都打上
企鹅号小编
2018/02/06
1.3K0
Web前端,认识css,css规格,伪类和伪元素的用法,代码详解!
这些 CSS 伪类,你可能还不知道,可以用起来了!
css 伪类是用于向某些选择器添加特殊的效果,是动态的,指当前元素所处的状态或者特性。只有一个元素达到一个特定状态时,它可能得到一个伪类的样式;当状态改变时,它又会失去这个样式。
前端小智@大迁世界
2020/06/04
1.3K0
这些 CSS 伪类,你可能还不知道,可以用起来了!
认识css3伪元素
css2的规定为单冒号表示,而css3已经明确表示伪类使用单冒号,伪元素使用双冒号,本次所有测试双冒号
潇洒哥和黑大帅
2018/10/23
7750
详解css中伪元素::before和::after和创意用法
本文为稀土掘金技术社区首发签约文章,14天内禁止转载,14天后未获授权禁止转载,侵权必究!
十里青山
2022/11/16
3.7K0
详解css中伪元素::before和::after和创意用法
Pseudo elements伪元素与Pseudo classes伪类
::after用于描述处于css渲染层的一个伪元素,相当于选中元素的最后一个子元素,但这个元素与DOM节点无关,位于选择的元素之后,伪元素的内容用content属性描述。
gojam
2019/05/14
8750
CSS3选择器介绍及用法总结[通俗易懂]
CSS3新增了很多强大的选择器 它可以让我们少写一些js事件脚本 我们先来看看各个版本的选择器有哪些 注: ele代表element元素 attr代表attribute属性,val代表value属性值 :xxx都属于伪类选择器,::xxx都属于伪元素选择器 有名字的选择器我尽量细分了 #CCS1选择器#
全栈程序员站长
2022/09/14
1.5K0
CSS3选择器介绍及用法总结[通俗易懂]
【Java 进阶篇】CSS 选择器详解
CSS(层叠样式表)是一种用于描述网页上元素样式的语言。要想有效地使用CSS,了解CSS选择器是至关重要的,因为它们允许你选择要应用样式的HTML元素。在本文中,我们将详细介绍CSS选择器的各种类型和用法,以便你能够更好地掌握这一关键概念。
繁依Fanyi
2023/10/12
3100
【Java 进阶篇】CSS 选择器详解
CSS中伪类与伪元素,你弄懂了吗?
熟悉前端的人都会听过css的伪类与伪元素,然而大多数的人都会将这两者混淆。本文从解析伪类与伪元素的含义出发,区分这两者的区别,即使你有用过伪类与伪元素,但里面总有一两个你没见过的吧。
Javanx
2019/09/05
1.3K0
CSS中伪类与伪元素,你弄懂了吗?
总结伪类和伪元素(转)
先说一说为什么css要引入伪元素和伪类,以下是css2.1 Selectors章节中对伪类与伪元素的描述:
山河木马
2019/03/05
1.5K0
总结伪类和伪元素(转)
【CSS】伪元素和伪类选择器区别
可通过使用css伪类实现点击元素变色的效果,两个伪类是:active, :focus
司六米希
2022/11/15
1.7K0
一篇文章带你了解CSS Pseudo-elements(伪元素)
CSS Pseudo-elements 伪元素是一个附加至选择器末的关键词,允许对被选择元素的特定部分修改样式。CSS伪元素是一种样式化文档元素的方法,这些元素没有由文档树中的位置明确定义。
前端进阶者
2021/01/22
1.1K0
「css基础」你想知道的伪元素内容都在这篇文章里(长文值得收藏)
最近因为一些网页的需要,需要比较深入的使用了CSS 的「伪元素」( Pseudo Element ),发现原来不只是用用before或after 而已,可以玩的东西还真是不少,所以就来篇文章,把这些比较不常玩的用法归纳整理下,希望对你的日常工作有所帮助。
前端达人
2019/08/23
9990
「css基础」你想知道的伪元素内容都在这篇文章里(长文值得收藏)
CSS-伪类和伪元素
背景 写了这么多年代码,对CSS中的伪类和伪元素竟然没有细致的进行过学习总结,由此可见在实际代码开发中,用的也确实不多,也就用过一些:first-child,:hover之类的吧,其它的连before什么的都没用过,于是迫切需要大于伪元素与伪类进行一个系统整体的学习。 伪类和伪元素 伪类:是以一个冒号作为前缀,被添加到选择器的末尾,当你希望在特定状态下(:hover)才被呈现到指定元素时,可以往元素的选择器后面加上伪类。 伪元素:用于创建一些不在文档树中的元素,并为其添加样式。比如::befor
六个周
2022/10/28
1.1K0
解析CSS伪类和伪元素的常见用法和实例
CSS伪类和伪元素是一种特殊类型的选择器,可以用于在元素状态或者文档树中的特定位置添加样式。它们允许开发者选择一个元素的部分或者元素的部分状态,从而改变它们的样式。下面将介绍一些常见的伪类和伪元素的用法和实例。
老K博客
2023/12/25
2270
推荐阅读
相关推荐
css篇-面试题6-伪类与伪元素的区别
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验