html - 使用 css 更改部分 SVG 颜色
问题描述
我有一个 SVG 图像,我希望改变它的部分颜色。SVG 将始终由 2 种颜色组成,即黑色和黄色
我正在寻找使用 css 类更改黄色,因此我可以轻松切换到另一种颜色主题,而无需在黄色版本中创建所有 svg 按钮。
这是可能吗?我似乎在网上找不到太多关于这个的..
SVG 使用带有 background-image 的类在 span/div 上设置
如果我用 SVG 实现标签,那么我可以用 css 更改颜色。但如果可能的话,我希望将它用作一个类(并且 svg 不应该直接在 html 中)
<svg>
<use xlink:href="#robot" id="robot-1" />
</svg>
Turorial: https ://tympanus.net/codrops/2015/07/16/styling-svg-use-content-css/
JsFiddle: https ://jsfiddle.net/wahjvmnq/
解决方案
--secondary-color
您可以使用to更改所有路径fill: currentColor
,然后使用 HTML 元素包装 SVG,该元素应用了 CSS 类或样式以更新color
属性。
更新path
当前使用的 SVG 中的 's 后--secondary-color
:
<div style="color:red;">
<svg>
<use xlink:href="#robot" id="robot-1" />
</svg>
</div>
这是jsFiddle上的一个示例,其中黄色已更改为红色。
除非它是 HTML 文档的一部分,否则您不能使用 CSS 覆盖 SVG 颜色。
推荐阅读
- node.js - 使用“npm audit”时如何只检查高漏洞?
- javascript - jQuery单击多个ID并获取值
- c++ - 在 allegro5 (C++) 中的另一个图像上的图像
- python-3.x - 在 Keras 中使用 LSTM 预测时间序列数据
- ubuntu - 睡眠和时钟方法
- php - 如何在我的 mvc 应用程序中查看 php 页面
- autodesk-forge - 为什么我在使用模型衍生 API 时看不到所有 .pf(图形)文件
- python - 无法将数据插入数据库,但每次运行它都会返回成功
- android - 无法使用使用 Retrofit 2 检索的对象在 MutableLiveData 中设置值
- java - 批处理 - 处理大量数据