当我将鼠标悬停在SVG图像上时,我想更改它的填充。
现在我有一个从Illustrator导出到SVG的黑色问号。 我可以使用img标签放置我的页面,它显示正常,但我不知道如何更改代码中的颜色。
答案 0 :(得分:7)
如果您需要在svg中进行悬停效果,则不应使用< img>标签。而是使用< iframe>,< object>引用svg。或者< embed>标签。如果要保存http GET请求,可以将svg标记内联到html文档中。
以下示例显示了一个简单的填充悬停效果inside an svg和another one(稍微复杂一点,使用过滤器在悬停时创建轮廓)。无论如何,它基本上是关于应用:hover CSS规则来设置填充颜色。
可以看到使用svg的所有上述方法的示例here。
答案 1 :(得分:1)
可以直接从javascript修改SVG文件,即可以从DOM中访问“图像”的属性。
从堆栈溢出中查看此帖子:modify stroke and fill of svg image with javascript
重要的是要记住,为此,您不能将svg文件包含在公共HTML *&lt; img / &gt; *标记中,而是使用*&lt; svg < / em>&gt; * ... **&lt; / svg&gt; ,如帖子所示。
我添加了一个指向w3schools的链接,以便您可以看到svg对象的更多属性
玩得开心
答案 2 :(得分:-3)
如果您可以发布您的代码,也许我们可以为您排除故障。
请尝试以下操作:http://tutorials.jenkov.com/svg/svg-and-css.html
或者(不是SVG专用),将此类代码用于不同的图像:
<img src="image1.svg"
onmouseover="this.src='image2.svg'"
onmouseout="this.src='image1.svg'">