如何在 html 中引用 SVG 并访问 css 样式

罗恩

我的项目(Angular 10)中包含许多不同的 SVG。其中一些以不同的大小和填充颜色等多次使用。

我试图找到一种在我的 html 代码中引用它们的方法,并可以通过样式访问:

CSS:

.svg {
  fill: red;
}

参考:

<svg>
   <use></use>
</svg>
<object></object>
<img></img>
<embed></embed>

到目前为止,我还没有找到允许我引用它们但也能够像添加内联时一样访问 SVG 本身的 fill 属性的解决方案。

排队:

<svg>
   <path>
   </path>
</svg>

内联添加它们会很麻烦。

这通常是如何处理的?

感谢您的帮助!

保罗·勒博

你不能。CSS 不适用于跨文档边界。如果 CSS 规则在 HTML 中(或通过 导入到 HTML 中<link>),则它不会影响外部文件的内容。

人们过去使用的一种解决方案是在运行时使用一些 Javascript 来内联 SVG 文件

否则,您需要将 CSS 放在外部 SVG 本身中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章