悬停在元素上会激活hover CSS以获取另一个元素

Aug*_*ust 2 html css hover

我正在制作带有图标和一些文字的菜单,如下所示:

在此输入图像描述

问题是,当我将鼠标悬停在标签上时,我希望图标"突出显示",而不是将鼠标悬停在小图标上方.所以这就是现在发生的事情:

在此输入图像描述

在此输入图像描述

所以我的问题是如何将鼠标悬停在一个元素上(选项卡是一个div),并激活另一个元素(图标)的悬停CSS.

这是图标的代码:(HTML)

<a href="#" class="menubutton">
   <span id="playicon"></span> Servers
</a>
Run Code Online (Sandbox Code Playgroud)

(CSS)

#playicon {
    width:12px;
    height:12px;
    background-image:url("img/svg/play2.svg");
    background-repeat:no-repeat;
    display:inline-block;
}

#playicon:hover {
    background-image:url(img/svg/play_hover.svg);
}
Run Code Online (Sandbox Code Playgroud)

先感谢您!:)

Jon*_*Jon 5

使用您提供的HTML,您需要将第二个规则更改为

.menubutton:hover #playicon {
    background-image:url(img/svg/play_hover.svg);
}
Run Code Online (Sandbox Code Playgroud)

这个规则适用于#playicon什么时候它是一个悬停的后代.menubutton,这是你想要的(使用子选择器.menubutton:hover > #playicon可能是一个好主意,虽然它不会产生任何实际的区别).

此外,请注意,有一个<span>像这样的确定id有点奇怪 - 看起来你会在同一页面上有这个跨度的倍数,并且ids需要是唯一的.如果你有倍数,请id用类替换.