【CSS】SVG图片属性及修改颜色
创作时间:
作者:
@小白创作中心
【CSS】SVG图片属性及修改颜色
引用
CSDN
1.
https://blog.csdn.net/kakaai77/article/details/137705189
在前端开发中,SVG(可缩放矢量图形)因其矢量特性而被广泛应用。然而,对于初学者来说,SVG的属性和颜色修改可能是一个挑战。本文将详细介绍SVG的关键属性,并提供实用的代码示例,帮助开发者更好地掌握SVG的使用。
SVG的基本属性
SVG有多个关键属性,其中最常用的包括:
- width:设置最终SVG图片的宽度。
- height:设置最终SVG图片的高度。
- viewBox:定义SVG的视区,即在SVG上截取一块区域并放大到整个SVG图片上。
viewBox的值通常包含四个参数:起始x坐标、起始y坐标、宽度和高度。
例如,以下是一个SVG代码示例:
<svg
t="1712966539403"
class="icon"
viewBox="0 0 1024 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="1466"
width="200"
height="200"
>
<path
d="M340.736 216.832A162.048 162.048 0 0 1 445.44 254.72a103.168 103.168 0 0 0 10.24 7.68 102.4 102.4 0 0 0 122.88-6.912 161.792 161.792 0 0 1 104.96-38.144 163.84 163.84 0 0 1 101.12 292.864 102.4 102.4 0 0 0-9.216 8.192L511.232 782.592 238.336 509.696l-5.12-4.864a166.4 166.4 0 0 1-16.128-16.128l-1.28-1.536-1.28-1.536A162.048 162.048 0 0 1 176.64 380.928a164.352 164.352 0 0 1 164.096-164.096m0-102.4A266.496 266.496 0 0 0 135.68 551.168h-0.256l4.352 4.352a268.032 268.032 0 0 0 26.112 26.112l314.624 315.136a43.264 43.264 0 0 0 61.184 0l306.176-305.92A266.24 266.24 0 1 0 512.768 177.152l-1.536-1.536h-0.256a265.472 265.472 0 0 0-169.984-61.44z"
fill="#4C4C4C"
p-id="1467"
></path>
</svg>
在上述SVG代码中,viewBox的值表示:
- 从x轴坐标0开始截取
- 从y轴坐标0开始截取
- x轴截取1024个像素
- y轴截取1024个像素
最终将截取的区域等比例放大或缩小到指定的宽高,形成最终的SVG图片。
修改SVG的颜色
在实际开发中,我们经常需要修改SVG图标的颜色。SVG提供了fill属性来设置图标颜色。例如,将fill属性修改为粉色:
<svg
t="1712966539403"
class="icon"
viewBox="0 0 1024 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="1466"
width="200"
height="200"
>
<path
d="M340.736 216.832A162.048 162.048 0 0 1 445.44 254.72a103.168 103.168 0 0 0 10.24 7.68 102.4 102.4 0 0 0 122.88-6.912 161.792 161.792 0 0 1 104.96-38.144 163.84 163.84 0 0 1 101.12 292.864 102.4 102.4 0 0 0-9.216 8.192L511.232 782.592 238.336 509.696l-5.12-4.864a166.4 166.4 0 0 1-16.128-16.128l-1.28-1.536-1.28-1.536A162.048 162.048 0 0 1 176.64 380.928a164.352 164.352 0 0 1 164.096-164.096m0-102.4A266.496 266.496 0 0 0 135.68 551.168h-0.256l4.352 4.352a268.032 268.032 0 0 0 26.112 26.112l314.624 315.136a43.264 43.264 0 0 0 61.184 0l306.176-305.92A266.24 266.24 0 1 0 512.768 177.152l-1.536-1.536h-0.256a265.472 265.472 0 0 0-169.984-61.44z"
fill="pink"
p-id="1467"
></path>
</svg>
优化SVG颜色修改方式
对于前端开发者来说,直接修改fill属性可能不够方便。一个更好的方法是将fill属性设置为currentColor,这样就可以通过CSS的color属性来控制SVG的颜色:
<div style="color: purple">
<svg
t="1712966539403"
class="icon"
viewBox="0 0 1024 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="1466"
width="200"
height="200"
>
<path
d="M340.736 216.832A162.048 162.048 0 0 1 445.44 254.72a103.168 103.168 0 0 0 10.24 7.68 102.4 102.4 0 0 0 122.88-6.912 161.792 161.792 0 0 1 104.96-38.144 163.84 163.84 0 0 1 101.12 292.864 102.4 102.4 0 0 0-9.216 8.192L511.232 782.592 238.336 509.696l-5.12-4.864a166.4 166.4 0 0 1-16.128-16.128l-1.28-1.536-1.28-1.536A162.048 162.048 0 0 1 176.64 380.928a164.352 164.352 0 0 1 164.096-164.096m0-102.4A266.496 266.496 0 0 0 135.68 551.168h-0.256l4.352 4.352a268.032 268.032 0 0 0 26.112 26.112l314.624 315.136a43.264 43.264 0 0 0 61.184 0l306.176-305.92A266.24 266.24 0 1 0 512.768 177.152l-1.536-1.536h-0.256a265.472 265.472 0 0 0-169.984-61.44z"
p-id="1467"
fill="currentColor"
></path>
</svg>
</div>
这种方法的好处是color属性具有继承性,可以更方便地通过CSS来控制SVG的颜色。
通过本文的介绍,相信读者对SVG的基本属性和颜色修改方法有了更深入的了解。掌握这些知识将有助于开发出更灵活、更美观的前端界面。
热门推荐
登山必备!户外达人不可错过的十大装备清单
AI生成文章:为社会热点话题提供多元视角
网络工程用什么编程语言
企业如何应对专利驳回复审?必知的策略与技巧
龙骧将军与龙骧城
聚邻苯二甲酰胺(PPA)的基本性能与应用
对于长期闲置的发电机组,应如何进行保养和存放?
94%的稳定就业率 江苏发布全省技工院校就业质量白皮书
如何把握股市热点的变化趋势?这种变化对投资者有哪些影响?
遭遇骚扰如何收集证据?这份指南请收好
国家出手管体重:糖友体重对血糖影响大,专家给出4大管理策略!
放一次大型烟花多少钱?揭秘震撼烟花秀背后的价格
诡楼回魂海龟汤怎么通关 诡楼回魂海龟汤通关方法介绍
什么才算是模块化街景建筑?乐高官方设计师揭秘其三条黄金设计法则
前3次工业革命是七国争雄,中国为何能成第4次“头号玩家”?秦始皇的智慧
什么是股票技术分析中的一种指标?这种指标如何应用于投资决策?
如何撰写一份成功的申请以有效传达个人意图和优势?
肥胖引起的脂肪瘤减肥后会消失吗
冬季护肤全攻略:洗澡频率与保湿技巧
跨境电商全链路成本分析,从采购到收款的优化路径
西工大苏海军教授团队:高强塑共晶高熵合金激光增材制造新突破
沉没的宝藏:泰坦尼克号上的失落财富
秋季花卉根部修剪指南:科学养护促健康生长
数据库如何实现高拓展性
港股通的标的选择和投资策略是什么?港股通对两地市场有何影响?
痹症辨证分析分型
湖南省森林可持续经营的推进策略与路径优化
00后逆袭家政圈背后:58到家用"技术+技能"为家政人保驾护航
数据复盘:11股获主力资金净流入超亿元 龙虎榜机构抢筹10股
如何通过有效的技巧改善安卓手机的声音