吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1931|回复: 14
收起左侧

[已解决] 前端:伪元素到底是一个还是两个冒号?

  [复制链接]
clearwater 发表于 2020-2-13 14:29
本帖最后由 clearwater 于 2020-2-14 13:08 编辑

1、由于能量有限,所以我只给前两位,回答正确,并且能帮我理解的大神评分。后面的人的答案如果雷同,我只能在此表示感谢了。请恕不一一评分了。
2、请口下留情,不要来讥讽我;另外不要来回答与我的问题无关的水帖。比如:感谢分享,路过,帮顶,我也不懂。

我想请教一下,伪元素前面到底是一个冒号,还是两个冒号?

还是一个或两个冒号都可以?

我在学习某前端的视频,学到伪元素时,视频老师说,两个冒号。但是我去复习前面的知识时,发现他在清除浮动时,用的是一个冒号。(结果显示都是对的。)以下截图都是老师的代码和笔记。

不过我有点乱了,请大神澄清一下,该咋用呢?

1013-1.PNG 1013-2.PNG

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

ixeliap 发表于 2020-2-13 14:37
清楚一点:
单冒号(:)用于CSS3伪类,双冒号(::)用于CSS3伪元素。
伪元素由双冒号和伪元素名称组成。双冒号是在css3规范中引入的,用于区分伪类和伪元素。但是伪类兼容现存样式,浏览器需要同时支持旧的伪类,比如:first-line、:first-letter、:before、:after等。
对于CSS2之前已有的伪元素,比如:before,单冒号和双冒号的写法::before作用是一样的。
提醒,如果你的网站只需要兼容webkit、firefox、opera等浏览器,建议对于伪元素采用双冒号的写法,如果不得不兼容IE浏览器,还是用CSS2的单冒号写法比较安全。

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
clearwater + 1 + 1 谢谢@Thanks!

查看全部评分

ixeliap 发表于 2020-2-13 14:34
只要兼容现代浏览器如 webkit、firefox、opera等浏览器,对于伪元素采用双冒号的写法,要是非要兼容IE浏览器,用CSS2的单冒号写法比较安全。
含笑阁 发表于 2020-2-13 14:37
 楼主| clearwater 发表于 2020-2-13 14:41
ixeliap 发表于 2020-2-13 14:37
清楚一点:
单冒号(:)用于CSS3伪类,双冒号(::)用于CSS3伪元素。
伪元素由双冒号和伪元素名称组成。双冒 ...

提醒,如果你的网站只需要兼容webkit、firefox、opera等浏览器,建议对于伪元素采用双冒号的写法,如果不得不兼容IE浏览器,还是用CSS2的单冒号写法比较安全。

网站不是给所有访问人的人来看的吗? 谁知道他们用啥浏览器啊? 那我该咋选?



 楼主| clearwater 发表于 2020-2-13 14:52
@氖气

求助大师。
Takitooru 发表于 2020-2-13 14:56
网站不是给所有访问人的人来看的吗? 谁知道他们用啥浏览器啊? 那我该咋选?

哈哈楼主真可爱,我用简单通俗的方式给你理解吧

:单冒号  是CSS2正确且正常写法
::双冒号 是CSS3新写法且兼容性写法
兼容性写法就是给不同浏览器解析不同的元素
举例
你用单冒号  :AAA  ---->在IE浏览器下正常,如果使用谷歌或者火狐之类的浏览器就会页面错位等等

如果在用双冒号做兼容性处理  ::AAA  --->不同的浏览器就会自动区分解析。
所以楼主要理解兼容性是啥意思

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
clearwater + 1 + 1 谢谢@Thanks!

查看全部评分

 楼主| clearwater 发表于 2020-2-13 15:12
Takitooru 发表于 2020-2-13 14:56
网站不是给所有访问人的人来看的吗? 谁知道他们用啥浏览器啊? 那我该咋选?
哈哈楼主真可爱,我用简单通 ...

谢谢大师。

知心 发表于 2020-2-13 15:14
单冒号用于伪类的书写,双冒号用于伪元素的书写。伪类为了兼容旧有样式,:after和::after都是一样的作用。

伪类和伪元素的区别:伪元素是虚拟元素,有类似dom结构这样的功能,伪类是虚拟类名,有类似选择器这样的功能。

    伪类有 :link :hover :active :visited :focus :first-child。

    伪元素有 ::before ::after。
 楼主| clearwater 发表于 2020-2-13 15:21
我觉得还是不是很明白。

我学习的视频老师提到,CSS3,象IE6,7,8 是不兼容的。

如果说,双冒号,是伪元素的CSS3的话,是不是不兼容IE老版本? 我觉得前面的ixe大神说法,让我比较能接受。


P.S. 伪类我搞明白了。我问的,只是伪元素。不要再把伪类拖进来,否则我的脑子不够用辣。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-30 06:23

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表