为了账号安全,请及时绑定邮箱和手机立即绑定

伪类 伪元素

为什么在添加圆的下面的倒三角的时候用伪类,而不是用伪元素?.tooltip-content::after{},
伪类和伪元素的区别是什么?

正在回答

4 回答

单冒号 (:) 表示伪类 :  已有元素处于某种状态时 , 为其添加对应的样式 , 状态是根据用户行为而动态变化 , 譬如 : 当用户悬停在指定的元素时,我们可以通过:hover 来描述这个元素的状态

双冒号 (::) 表示伪元素 : 伪元素用于创建一些不在文档树中的元素,并为其添加样式。比如说,我们可以通过::before 来在一个元素前增加一些文本,并为这些文本添加样式。虽然用户可以看到这些文本,但是这些文本实际上不在文档树中。

0 回复 有任何疑惑可以回复我~

没有吧,定义不一样的说。

伪类:http://www.w3school.com.cn/css/css_pseudo_classes.asp

伪元素:http://www.w3school.com.cn/css/css_pseudo_elements.asp

单冒号(:)用于CSS3伪类,双冒号(::)用于CSS3伪元素。

双冒号是在当前规范中引入的,用于区分伪类和伪元素。但是伪类兼容现存样式,浏览器需要同时支持旧的伪类,比如:first-line、:first-letter、:before、:after等。

对于CSS2之前已有的伪元素,比如:before和:after,单冒号和双冒号的写法::before和::after作用是一样的。

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


0 回复 有任何疑惑可以回复我~

伪类用于向某些选择器添加特殊的效果。如::link,:visited,:hover,:active等。

伪元素用于将特殊的效果添加到某些选择器。如::first-line,:first-letter,:before,:after 等。




0 回复 有任何疑惑可以回复我~
#1

左转右行 提问者

那为什么W3C上面把它们两的定义是一样的?双冒号和单冒号又什么时候来用?
2015-05-05 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

伪类 伪元素

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信