在我的 html 页面中,我有一个按钮,里面有两个 div。上面的 div 包含菜单图标 svg,下面的 div 包含按钮文本。必须使用 div 将图标和文本放置在所需位置。
当鼠标悬停在按钮上时,我希望同时:
- 按钮文字颜色从灰色变为蓝色
- 图像的过滤选项被激活,因此灰色图标变为蓝色图标。
目前,我有如下的 CSS 定义,当鼠标悬停在按钮上时,以及当鼠标悬停在第一个 div(svg)上时,它们可以独立起作用。
当我为整个按钮定义一个过滤器时,鼠标悬停在按钮上时,文本和图像颜色会同时改变,图像背景颜色也会被过滤。当然这是不想要的。
仅使用 css 就能实现我的目标吗?
我的html标记:
<button class="icon-button" @onclick="@(() => { Connect_to_MAE();})">
<div><img class="svg_icon" src="images/abc.svg" width="36" height="36"></div>
<div>Connect</div>
</button>
我的CSS:
.icon-button:hover {
color: cornflowerblue; /* changes text color */
}
.svg_icon:hover {
filter: sepia(100%) hue-rotate(190deg) saturate(500%); /* changes just icon color */
}
只需用户悬停并根据您的要求更改其属性。