本篇文章给大家带来的内容是介绍css中伪类和伪元素有什么区别?:before和::before的区别。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。
伪类用于选择DOM树之外的信息,或是不能用简单选择器进行表示的信息。前者包含那些匹配指定状态的元素,比如:visited
,:active
;后者包含那些满足一定逻辑条件的DOM树中的元素,比如:first-child
,:first-of-type
,:target
。
(相当于一个特殊的class选择器,用来添加一些特殊效果)
伪元素为DOM树没有定义的虚拟元素。不同于其他选择器,它不以元素为最小选择单元,它选择的是元素指定内容。比如::before
表示选择元素内容的之前内容,也就是""
;::selection
表示选择元素被选中的内容。
(相当于一个特殊的元素(p、span),可以用来存放一些特殊样式或者内容)
在CSS3中,伪类与伪元素在语法上也有所区别,伪元素修改为以::
开头。但因为历史原因,浏览器对以:
开头的伪元素也继续支持,但建议规范书写为::
开头。
伪类
Selector | Meaning | CSS |
---|---|---|
:active | 选择正在被激活的元素 | 1 |
:hover | 选择被鼠标悬浮着元素 | 1 |
:link | 选择未被访问的元素 | 1 |
:visited | 选择已被访问的元素 | 1 |
:first-child | 选择满足是其父元素的第一个子元素的元素 | 2 |
:lang | 选择带有指定 lang 属性的元素 | 2 |
:focus | 选择拥有键盘输入焦点的元素 | 2 |
:enable | 选择每个已启动的元素 | 3 |
:disable | 选择每个已禁止的元素 | 3 |
:checked | 选择每个被选中的元素 | 3 |
:target | 选择当前的锚点元素 | 3 |
:first-of-type | 选择满足是其父元素的第一个某类型子元素的元素 | 3 |
:last-of-type | 选择满足是其父元素的最后一个某类型子元素的元素 | 3 |
:only-of-type | 选择满足是其父元素的唯一一个某类型子元素的元素 | 3 |
:nth-of-type(n) | 选择满足是其父元素的第n个某类型子元素的元素 | 3 |
:nth-last-of-type(n) | 选择满足是其父元素的倒数第n个某类型的元素 | 3 |
:only-child | 选择满足是其父元素的唯一一个子元素的元素 | 3 |
:last-child | 选择满足是其父元素的最后一个元素的元素 | 3 |
:nth-child(n) | 选择满足是其父元素的第n个子元素的元素 | 3 |
:nth-last-child(n) | 选择满足是其父元素的倒数第n个子元素的元素 | 3 |
:empty | 选择满足没有子元素的元素 | 3 |
:in-range | 选择满足值在指定范围内的元素 | 3 |
:out-of-range | 选择值不在指定范围内的元素 | 3 |
:invalid | 选择满足值为无效值的元素 | 3 |
:valid | 选择满足值为有效值的元素 | 3 |
:not(selector) | 选择不满足selector的元素 | 3 |
:optional | 选择为可选项的表单元素,即没有“required”属性 | 3 |
:read-only | 选择有"readonly"的表单元素 | 3 |
:read-write | 选择没有"readonly"的表单元素 | 3 |
:root | 选择根元素 | 3 |
-
伪元素
Selector Meaning CSS ::first-letter 选择指定元素的第一个单词 1 ::first-line 选择指定元素的第一行 1 ::after 在指定元素的内容前面插入内容 2 ::before 在指定元素的内容后面插入内容 2 ::selection 选择指定元素中被用户选中的内容 3
:before和::before的区别
二者写法是等效的,都表示伪元素。
:before是CSS2的写法,::before是CSS3的写法。
:before的兼容性比::before兼容性好,但是H5开发中建议使用::before
注意:
伪元素要配合content属性一起使用
伪元素不会出现在DOM中,所以不能通过js来操作,仅仅是在 CSS 渲染层加入
伪元素的特效通常要使用:hover伪类样式来激活
.test:hover::before { /* 这时animation和transition才生效 */ }
参考地址:https://www.cnblogs.com/ammyben/p/8012747.html
https://blog.csdn.net/yangxiaoyanger/article/details/79712180
以上是css中伪类和伪元素有什么区别?:before和::before的区别的详细内容。更多信息请关注PHP中文网其他相关文章!

伪元素失效了的原因:1、选择器问题;2、样式冲突;3、继承问题;4、语法错误;5、浏览器兼容性问题等。详细介绍:1、选择器问题,伪元素的选择器可能不正确,导致无法选择到目标元素;2、样式冲突,如果在CSS中存在样式冲突,可能会导致伪元素失效;3、继承问题,伪元素可能无法继承某些样式属性;4、语法错误,如果在CSS中存在语法错误,可能会导致伪元素失效;5、浏览器兼容性问题等等。

使用:nth-child(n+3)伪类选择器选择位置大于等于3的子元素的样式,具体代码示例如下:HTML代码:<divid="container"><divclass="item">第一个子元素</div><divclass="item"&

在之前的文章《css伪选择器学习之伪元素选择器解析》中,我们学习了伪元素选择器,而今天我们详细了解一下伪类选择器,希望对大家有所帮助!

实现CSS::placeholder伪元素选择器的多种应用场景,需要具体代码示例在Web开发中,CSS是一种常用的样式表语言,用于控制网页的布局和样式。而::placeholder伪元素选择器则是CSS3新增的一种选择器,用于修改输入框(包括文本输入框、密码输入框等)的占位符样式。下面将为大家介绍多种应用场景,并提供相应的代码示例。修改输入框占位符的颜色:

hover不是伪元素,是伪类。伪类用于选择元素的特定状态或行为,而伪元素则用于在元素的特定部分添加样式。因为:hover用于选择元素的特定状态,而不是在元素的特定部分添加样式,使用:hover伪类可以为元素的鼠标悬停状态添加样式,可以通过:hover伪类为链接添加悬停效果,当鼠标悬停在链接上时,链接的颜色、背景色等可以发生变化。

加上伪元素可以用来创建装饰性的效果、实现特定的布局效果、创建交互效果、修饰特定的元素状态和创建一些特殊效果等。详细介绍:1、创建装饰性的效果,通过设置:before或:after伪元素的内容属性和样式,可以在元素之前或之后插入图标、形状或其他装饰性元素,这样可以为网页添加更多的视觉吸引力和个性化;2、实现特定的布局效果,通过:before和:after伪元素可以创建等等。

使用:active伪类选择器实现鼠标点击效果的CSS样式CSS是一种层叠样式表语言,用于描述网页的表现和样式。:active是CSS中的一个伪类选择器,用于选择元素在鼠标点击时的状态。通过使用:active伪类选择器,我们可以为被点击的元素添加特定的样式,以达到鼠标点击效果的目的。下面是一个简单的示例代码,演示如何使用:active伪类选择器实现鼠标点击效果

伪元素是CSS中的一种特殊选择器,用于在元素的特定位置插入内容,它们被称为“伪元素”,是因为它们不是实际存在于HTML文档中的元素,而是通过CSS来创建的。它可以用来在元素的前面或后面插入内容,或者在元素的内部的特定位置插入内容,通常用于添加装饰性的效果或改变元素的外观。在CSS中,伪元素使用双冒号来表示,而不是单冒号,这是为了与伪类区分开来,伪类使用单冒号表示。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

WebStorm Mac版
好用的JavaScript开发工具

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

Atom编辑器mac版下载
最流行的的开源编辑器