【问题标题】:Changing SVG link object fill on hover with CSS使用 CSS 更改悬停时的 SVG 链接对象填充
【发布时间】:2014-12-14 05:17:04
【问题描述】:

我的页面上有一个 SVG 对象链接:

<a href="#" target="_blank">
        <object data="icons/email.svg" type="image/svg+xml" style="pointer-events: none;" class="icon">
                    gmail
        </object>
</a>

我正在尝试使用我的 SVG 文件中的此代码更改悬停时的填充颜色:

<style>
    * {
      pointer-events: fill;
    }

    #email:hover path {
        fill:white;
    }
</style>

问题是悬停效果仅在我删除 style="pointer-events: none;" 时才有效来自 HTML,但该链接仅在该代码存在时才有效。

感谢任何帮助。我检查了类似的主题,但无法找到答案。

【问题讨论】:

    标签: svg


    【解决方案1】:

    链接仅在 &lt;object&gt; 标记的内容是非交互式的时才有效,因此它们在 pointer-events="none" 时有效,否则无效。

    对于您的用例,您可能需要在 SVG 文件内部创建链接,即通过 SVG 文件中的 SVG &lt;a&gt; 标记,而不是在 HTML 文件中使用 HTML 链接。

    【讨论】:

    • 这是通过在 SVG 文件的内容周围添加 ... 来实现的。谢谢!
    猜你喜欢
    • 2018-10-25
    • 2021-12-24
    • 1970-01-01
    • 1970-01-01
    • 2018-03-03
    • 2021-11-24
    • 2016-08-02
    • 2013-02-09
    相关资源
    最近更新 更多