请检查这个插件:
https://plnkr.co/edit/jqPx9qpN3W1Jrix2axPw?p=preview
<div width="100px">
<svg width="100px" viewBox="0 0 100 100">
<a xlink:href="#" class="node">
<text transform="translate(50 50)">hh2</text>
</a>
</svg>
</div>
a:hover {
text-decoration: underline;
}
在 chrome 上你会看到悬停时有下划线,但在 IE 上没有下划线。我尝试用 css 解决但没有成功。
在 SVG 中,text-underline
的行为与在 HTML 中略有不同。
在 SVG 中,the specification states that it shouldn't inherit.
Chrome 和 FF 似乎放宽了该限制。
要在 IE 中解决这个问题,只需更改 CSS 规则以包含文本元素。
a:focus text, a:hover text {
color: #23527c;
text-decoration: underline;
}
<h1>Hello Plunker!</h1>
<div width="100px">
<svg width="100px" viewBox="0 0 100 100">
<a xlink:href="#" class="node">
<text transform="translate(50 50)">hh2</text>
</a>
</svg>
</div>
我是一名优秀的程序员,十分优秀!