我正在创建一个使用 SVG 作为标题/导航的网站。起初我在 svg 中创建了超链接文本,如下所示:
<a xlink:href="">
<text transform="matrix(1 0 0 1 495 160)"
font-family="'Ubuntu'" font-size="22">Contact</text>
</a>
但是当我向它添加一个 jquery 滚动时,我发现这在 xlinks 上不起作用。
为了解决这个问题,我决定让文本具有绝对定位以覆盖 svg,并将其添加到我的样式中:
#menu {
position:absolute;
top:25%;
left:60%;
width:100%;
}
并将项目作为列表:
<ul id="menu">
<li><a id="welkom" href="#tex" title="Welkom">Welkom</a></li>
<li><a id="missie" href="" title="Missie">Missie</a></li>
<li><a id="links" href="" title="Links">Links</a></li>
</ul>
我已经让它工作了,但只能在 1980px 宽的窗口上工作,因为 svg 整体重新缩放并且文本不遵循相同的模式。 http://fiddle.jshell.net/78eh5u52/9/show/
但我更喜欢“联系人”按钮的显示方式,因为它会随着 svg 重新缩放,但正如您在小提琴中看到的那样,平滑滚动效果并不适用
应该有两种方法来解决这个问题:我要么恢复将文本放在 svg 中,然后找到一种方法来获得滚动效果。或者我弄清楚如何使文本大小和位置比例与底层 svg 完全相同(svg 在 svg 之上?)
您会建议我以哪种方式尝试解决此问题,我应该研究什么?
这是我的完整代码: