首页 > 其他分享 >修改svg图标颜色方法

修改svg图标颜色方法

时间:2023-06-19 11:24:47浏览次数:46  
标签:fill color svg 修改 图标 css icon

1. 直接修改svg文件中fill属性

2. 使用css修改svg图标的fill属性

仅对内联svg有效

3. 使用currentColor

只对html中内联的svg有效,包括symbol和use,对background中svg无效

修改svg文件中的fill属性为currentColor,在父级使用color改颜色,或者 使用 css样式 svg {fill:red} 修改svg图标颜色

4. 使用css变量

同样只对内联的svg有效

在svg文件,修改fill和stroke为css变量,设置标签style中的css变量即可

5. 使用mask

对内联和背景图标均有效,推荐

.icon {
    color: red;
    background-color: currentColor;
    mask-image: url(icon.svg);
}

6. 使用drop-shadow, 多重彩色影分身

<i class="icon"><i class="icon icon-del"></i></i>

.icon > .icon {
    position: relative;
    left: -20px;
    border-right: 20px solid transparent;
    filter: drop-shadow(red 20px 0px);
}

或者 (用绝对定位麻烦, img标签不妥)

<div style="position: relative; width: 20px; height: 20px; overflow: hidden;">
    <img src="icon.svg" style="position:absolute; left: -20px; filter: drop-shadow(20px 0 #32bb65)"/>
</div>

7. 使用滤镜

简单的纯黑或纯白图标

/* 图标变黑色 */
.black {
    filter: brightness(0);
}
/* 图标变白色 */
.white {
    filter: brightness(100);
}

其他颜色的图标也可以使用多个滤镜进行模拟,具体可参考  图标变色为任意指定颜色

8. svg多色图标

使用css变量进行穿透,可以穿透use标签的shadow DOM

<svg xmlns="http://www.w3.org/2000/svg" style="display: none">
    <symbol id="my-first-icon" viewBox="0 0 20 20">
        <title>my-first-icon</title>
        <path fill="var(--color-1)" d="..." />
        <path fill="var(--color-2)" d="..." />
        <path fill="var(--color-3)" d="..." />
    </symbol>
</svg>

<svg class="icon icon-colors">
    <use xlink:href="#my-first-icon" />
</svg>

.icon-colors {
    --color-1: #c13127;
    --color-2: #ef5b49;
    --color-3: #cacaea;
}

 

 

参考:https://www.zhangxinxu.com/wordpress/2016/06/png-icon-change-color-by-css/
         https://juejin.cn/post/7120895248665935902

标签:fill,color,svg,修改,图标,css,icon
From: https://www.cnblogs.com/mengff/p/17490650.html

相关文章

  • git 修改、覆盖文件没有 add commit 放弃取消
    在git仓库中,修改了文件或 覆盖了文件,发现可能分支错了或其他原因,想撤销修改gitcheckout要撤销的文件当前仓库里文件: 创建一个和仓库相同文件名的文件 模拟一个相同文件名文件,覆盖仓库里的1.txt 文件被覆盖了: 内容也变了: 现在撤销覆盖,暂存区......
  • 修改git远程仓库地址
    修改远程仓库地址进入git_test根目录gitremote查看所有远程仓库,gitremotexxx查看指定远程仓库地址gitremoteset-urloriginhttp://192.168.100.235:9797/john/git_test.git......
  • 如何修改ollydbg默认布局
     我使用的是吾爱改版的OD,工具栏点击出现布局选项    ......
  • 如何修改ollydbg默认配色
    效果图  配置一个配色方案点击选项----界面,配置字体、颜色、代码高亮,注意下拉框是圣诞树、跳转、高亮3、高亮4,他们是一个个的配置方案,不是定义方法。单选的点才是配色的具体方法,我这里选择配置方案是跳转及其调用    生效你的定义好的配置方案在内容窗口右键生效 ......
  • PC微信版本号修改
    一、准备工具1.PC版微信2.CheatEngine二、修改步骤1.以3.9.5.81为例,分成4段,就是:39581,再将这些数值转换为16进制。3=>3、9=>9、5=>5、81=>51,其中小数点用0表示。2.将转换后的数值拼接起来:6+30+90+551=63090551。3.打开CE搜索63090551。 4.然后修改结果的数值即可......
  • odoo16里面修改tree视图样式
    一、在static文件夹下新建一个css文件夹并将*.css文件写入/*该文件用来定义视图中的一些格式,需要用到的地方直接在xml文件中进行引用*//*语法说明*//*tableth:nth-child(1)代表定位到table的th上面到第一个th标题nth-child()参考css语法http://www.w3school.com.cn/c......
  • chrome:保存页面上的svg(chrome 114)
     一,复制svg在开发者工具中,选中要复制的svg然后在svg上右键->copy->copyelement二,保存成文件在sublime或其他编辑工具中粘贴,file->save->保存成wordpress.svg注意:此处的width/height两项可以按自己的需求修改说明:刘宏缔的架构森林—专注it技术的博客,网站:https://bl......
  • UAT环境不能登录修改点
    #ripples.cloud.user.list.url=https://app-gateway-out.bx.crpcg.com:8889ripples.cloud.user.list.url=https://gateway-out.uat.crpcg.com 增加:url="https://gateway-out.uat.crpcg.com/apis/auth@FeignClient(value="ripplescloud-security-auth",u......
  • element ui 修改按钮公共样式
    //.el-button--text.btntext.el-button--text{color:#000bff;}.btntext.el-button--text:hover{color:#000bff;}.btntext.el-button--text:active{color:#000bff;}.btntext.el-button.is-disabled,.btntext.el-button.is-disab......
  • mysql 8.0安装手册&密码修改
     MySql安装&修改密码 一.        安装mysql https://www.mysql.com/  单击“DOWNLOADS”  页面底部单击“MySQLCommunityServer”连接跳到如下连接的页面https://dev.mysql.com/downloads/mysql/  单击“Nothanks,juststartmydow......