伪元素上的伪类

Uda*_*ora 5 css css-selectors pseudo-class pseudo-element

可以明确地说,我不是要为 css 做(伪)开始。只是想检查是否可以在伪元素上添加伪类。例如:

.some-class:after:hover {
}
Run Code Online (Sandbox Code Playgroud)

似乎不起作用。

这虽然有效:

.some-class:hover:after {
}
Run Code Online (Sandbox Code Playgroud)

当然,这不会:

.some-class:hover:after:hover {
 }
Run Code Online (Sandbox Code Playgroud)

我想做的是 - 有一个 div。如果您将鼠标悬停在该 div 上,我将使用 :after 在 div 上附加一个删除图标。我想设计这个图标的样式(比如,把它放大到 1.1 左右)。这完全可以在 CSS 上实现吗?我只需要它在 Chrome 上工作。

Bol*_*ock 3

不,当前标准不允许将伪类附加到伪元素。伪元素唯一可能出现的地方是复杂选择器的最末尾,并且其后不能出现其他选择器或组合器。请参阅规格

一些实现(例如 WebKit)有自己的规则,但它们是非标准的并且不能跨浏览器工作。它们也可能不适用于所有伪类和/或所有伪元素。例如,据我所知,它:after:hover不适用于任何浏览器,包括 Chrome。

无论哪种方式,您都需要使用实际元素而不是伪元素。