Css 一起使用3个伪元素?

Css 一起使用3个伪元素?,css,hover,pseudo-element,Css,Hover,Pseudo Element,我想询问是否可以在同一CSS规则上同时使用伪元素:hover,:not(),和:after 对于这段代码,我需要使用所有3个: #sidebar ul:not(.sub-menu) li:hover:after{ content: ""; width:100%; height:50px; position:absolute; top:0; left:0; z-index:100; background: rgba(0,0,0,0.4

我想询问是否可以在同一CSS规则上同时使用伪元素
:hover
:not()
,和
:after

对于这段代码,我需要使用所有3个:

#sidebar ul:not(.sub-menu) li:hover:after{
    content: "";
    width:100%;
    height:50px;
    position:absolute;
    top:0;
    left:0;
    z-index:100;
    background: rgba(0,0,0,0.4);
}

因为我有一个边栏,在那里我使用伪元素在菜单项上产生悬停效果,但我想避免主菜单在子菜单悬停时进入悬停状态。

您可以用如下简单方法选择它:

#sidebar ul li { // Styles for the main li }
然后,对其中的子
  • 执行类似的操作:

    #sidebar ul li > ul li { // Styles for the sub menu li }