【问题标题】:Style base64 SVG from style sheet样式表中的 base64 SVG 样式
【发布时间】:2019-04-01 20:18:36
【问题描述】:

所以我有以下 CSS 来生成 SVG 徽标:

 background: url("data:image/svg+xml;base64,xyz.....");

有谁知道如何在样式表中使用 CSS 更改图标的颜色,而不是嵌入在 SVG 标记中。

我试图在页面上多次使用不同颜色的相同徽标,因此不想在我的样式表中加载多个版本的 SVG 代码。

谢谢!

【问题讨论】:

  • 你不能。如果您将 SVG 用作图像,则它不能从外部修改。
  • 我就是这么想的。任何人都可以提出任何替代解决方案吗?
  • 这实际上取决于徽标以及您希望如何显示它,但一种选择是创建一个图像,其中您要更改颜色的区域是透明的,然后将其放置在彩色背景上元素使用绝对定位。
  • 为什么不通过<object><iframe> 显示SVG,你可以通过DOM 调整它。

标签: css svg


【解决方案1】:

如果您要大量使用不同大小的字体,则可能值得制作自定义图标字体。

然后您可以使用 css 设置样式并使用 em 保持相对大小等。

http://www.font2web.com/ 等将采用 SVG。

【讨论】:

    【解决方案2】:

    正如 cmets 中所说:如果您使用 base64 格式显示 SVG 图像,则无法使用外部 CSS 对其进行样式设置。唯一的方法是使用原始的<svg> 格式,您可以在其中看到标签和属性,或者直接插入到您的html 中或从外部文件加载。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-18
      • 1970-01-01
      • 2010-12-20
      相关资源
      最近更新 更多