css - 如何在 CSS 中指定多个悬停事件目标?

标签 css hover

我的代码中有一个 SVG 图像,其中有 3 个路径,ID 分别为#top、#left、#right。我想在图像容器 (#block) 上悬停事件时交换它们的颜色。

<svg>

    #top           /* color 1*/
#left  #right      /* color 2*/

</svg>

目前我有 3 种 CSS 样式来实现这一点:

#block:hover #top
{ fill: color2; }

#block:hover #left
{ fill: color1; }

#block:hover #right
{ fill: color1; }

是否可以将最后两个样式合并为一个样式:

#block:hover #left, #right
{ fill: color1; }

或者更好,合而为一?

#block:hover
{ 
  @ #left { fill: color1; }
  @ #right{ fill: color1; }
  ....
}

谢谢!

最佳答案

您可以使用 http://lesscss.org/http://sass-lang.com/ . CSS 方式是:

#block:hover #left, #block:hover #right
    { fill: color1; }

少用:

#block:hover {
    #left, #right {
        fill: color1;
    }
}

关于css - 如何在 CSS 中指定多个悬停事件目标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18298147/

相关文章:

css - 上下滚动时颜色框移动

php - 在不使用单字字体的情况下,固定每个 <p> 的字符行数,这可能吗?

css - 将鼠标悬停在列表上时如何更改 anchor 颜色

html - 页脚下的白色条纹

css - 在 ionic4 的网格单元格中用一个字母居中圆圈

html - parent 高度比 child 小,为什么?

python - plot.ly 悬停框大小属性

css - 为什么我的 css 转换有时会在退出悬停后保持悬停状态?

jquery - 使用 jquery 更改悬停 div 的不透明度

html - CSS :hover div elements