为什么引入SVG文件,给它定义属性不生效原理分析

背景: 我使用antd 的Icon组件引入SVG图片,但给svg图片定义styles样式时,不生效,为什么呢? 我们平时用antd组件库的 < ArrowRightOutlined  style={{color: 'red '}}>时为什么会生效呢,但我图一这样定义就不生效呢? 

原因:是因为这个SVG 文件的原因,是因为UI给我们生成的文件,就不能接收style属性(粗暴说法,其实Icon会转化这些属性)。 如图二所示, fill = 'none'  改为 fill="currentColor" 就可以接收color属性了,并把path标签上的fill属性删掉。

   
import { ReactComponent as RightArrow2 } from '@/assets/images/home/rightArrow2.svg'

<Icon   component={() => <RightArrow2 style={{ color: 'red' }} />} alt="" />

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值