我有这样的事情:
<circle class="node" cx="" cy="" r="10" fill="green" />
<text class="description" x="-20" y="-10">Lorem description</text>
我尝试使用纯CSS将鼠标悬停在绿色svg圈子上,或者如果无法使用javascript,则将description
设置为隐藏/可见。我不希望/可以将description
从class
更改为id
。
有人可以帮我这个吗?
答案 0 :(得分:0)
在您的情况下,您只需要添加此CSS,因为.description
前面有.node
.node:hover + .description { visibility: visible}
已经完成了。这将跟踪具有类.node
的元素上的悬停操作,并使其下一个具有类.description
的相邻元素在其(.node
)悬停时可见。
以下是 FIDDLE
现在假设.description
不会立即在.node
之前,并且其他一些元素位于它们之间,那么您可以添加以下CSS
.node:hover ~ .description { visibility: visible}
~
组合子将两个选择器分开并仅在第一个元素前面与第二个元素匹配,并且它们共享一个共同的父元素。
因此,在.node
之前,.description
使用此CSS选择器技术的情况应该位于 <td class='n' id='1_A'>T</td>
<td class='n' id='1_B'>F</td>
<td class='n' id='1_C'>T</td>
<td class="row_num">1</td>
<td class='n' id='1_D'>T</td>
<td class='n' id='1_E'>F</td>
<td class='n' id='1_F'>T</td>
答案 1 :(得分:0)
添加此css类,它必须正常工作。
.node:hover + .description { visibility: visible}