使用CSS fill属性可控制SVG图形填充颜色,适用于circle、rect等闭合形状。通过内联style设置fill可直接生效,如style="fill: blue"使圆形变蓝;推荐使用CSS类定义fill颜色,如.icon-fill { fill: red },便于复用。可在外部或内部样式表中通过选择器统一设置,如svg .primary { fill: #ff6b6b }。结合伪类可实现交互效果,如:hover时fill变为紫色,并添加transition实现平滑过渡。需注意内联样式和!important可能覆盖CSS规则,导致样式不生效。

使用CSS fill 属性可以轻松控制SVG图形的填充颜色。这个属性适用于所有闭合路径和形状,比如 、、 以及 等元素。
直接在SVG内联样式中设置fill
你可以在SVG标签内部直接使用 style 属性来设置 fill 颜色。
svg width="100" height="100">这样圆形就会被蓝色填充。
通过CSS类设置fill颜色
更推荐的方式是使用CSS类,便于复用和维护。
立即学习“前端免费学习笔记(深入)”;
然后在CSS中定义:
.icon-fill {fill: red;
}
这样所有应用该类的SVG形状都会使用红色填充。
在外部或内部样式表中控制fill
你也可以通过选择器对特定SVG元素统一设置填充色。
svg .primary {fill: #ff6b6b;
}
svg .secondary {
fill: #aaa;
}
对应的SVG:
动态更改fill颜色(例如悬停效果)
利用CSS伪类可以实现交互效果。
.interactive-icon {fill: black;
transition: fill 0.3s ease;
}
.interactive-icon:hover {
fill: purple;
}
当鼠标悬停时,图标会平滑地变为紫色。
基本上就这些。fill属性非常直观,关键是确保目标SVG元素没有内联的 fill 覆盖了你的CSS规则。如果遇到样式不生效,检查是否有 !important 或内联样式优先级更高。










