mar*_*cel 8 css css-selectors css3 pseudo-element
根据W3C,选择器的定义不包括伪元素:https: //www.w3.org/TR/css3-selectors/#selector-syntax
以上链接说:
选择器是由组合器分隔的一个或多个简单选择器序列的链.
它还说:
简单的选择器是类型选择器,通用选择器,属性选择器,类选择器,ID选择器或伪类.
关于如何使用伪元素,它说:
可以将一个伪元素附加到选择器中的最后一个简单选择器序列.
和
每个选择器只能出现一个伪元素,如果存在,它必须出现在代表选择器主体的简单选择器序列之后.
那么这是否意味着伪元素只能是"有效"选择器的后缀而不应该单独使用?
这是否意味着伪元素只能是"有效"选择器的后缀,不应该单独使用?
您的结论不正确,因为可以省略通用选择器 *
.
如果由
*
[...] 表示的通用选择器后面紧跟一个伪元素,那么*
可以省略它并且隐含通用选择器的存在.
所以你可以单独使用伪元素,例如::before
,因为在引擎盖下它将被视为*::before
.
::before {
content: 'Hello!';
}
Run Code Online (Sandbox Code Playgroud)