如何让SVG图像继承HTML文档中的颜色?

use*_*639 30 html css svg colors

我有一堆SVG图像,我想嵌入一个HTML页面,用CSS设置样式.

我希望能够让SVG中的元素的颜色继承自父HTML元素的颜色属性.

我尝试过设置,style="stroke: none; fill: inherit"但这不起作用.

Rob*_*son 75

html使用颜色,而SVG使用填充和描边.您可以使用值currentColor来填充或描边以使用颜色CSS属性的值,例如fill ="currentColor"

  • 确实如此,但如果这就是您的意思,它就不是跨文档的。 (5认同)
  • 但是,这不适用于嵌入式 SVG,是吗? (3认同)

flo*_*ori 14

定义fill:整个 SVG 的currentColorCSS:

svg {
  fill: currentColor;
}
Run Code Online (Sandbox Code Playgroud)

这使得整个 SVG 继承color:周围元素的普通 CSS。只需确保所有 SVG 子元素都没有任何fill定义即可。


小智 13

您可以使用fill="currentColor"

<a href="#" style="color:red">
<svg fill="currentColor"> ...</svg>
</a>
Run Code Online (Sandbox Code Playgroud)


小智 5

中风=“currentColor”这对我有用