【发布时间】:2012-08-17 05:01:50
【问题描述】:
我有几个带有悬停效果的 svg 矩形,当鼠标悬停在矩形上时,矩形的背景颜色会发生变化。悬停效果通过css设置:
.myclass:hover {
fill: rgb(255,128,0);
}
除此之外,文本放置在每个矩形上方。一对文本和矩形定义了一个组。
<g>
<rect class="myclass" x="10" y="10" width="40" height="40" />
<text x="30" y="40" font-family="Verdana" font-size="10" fill="blue">ESC</text>
</g>
悬停效果很好,但前提是光标不在文本上方。如果它正好在文本上方,则悬停效果消失。
我该如何解决这个问题?
这里是截图:左侧可以看到悬停效果(背景为橙色),右侧可以看到如果光标碰到矩形上的文字,效果如何消失:
谢谢
【问题讨论】:
-
你试过 text:hover + rect {fill: rgb(255,128,0);} 吗?
-
是的,但这当然只会改变文本的颜色
-
只有文字的颜色?嗯,奇怪..
-
P.S.我的意思是你的代码加上我的代码。
-
啊,我明白了,谢谢。仍有问题,请参阅 ScottS 建议