前端使用svg图片改色实现示例_其它综合

来源:脚本之家  责任编辑:小易  
目录
引言svg填充色用的fillcss改色利用过滤器filter最后顺便介绍下filter: drop-shadow()

引言

周六来公司写点东西,刚好有个icon颜色不对,ui又不在公司,那么就只能自己动手丰衣足食了。

呜呜呜,好想住公司,都不用上下班了。

svg填充色用的fill

当ui给你了svg图片,且是单色的,又只有你用

svg填充色用的fill,修改里面的颜色即可。

下面是例子:

首先,ui一般会直接给你svg图片,比如这样的:

,用idea或者笔记本打开里面是这样的:

<?xml version="1.0" encoding="UTF-8"?>
<svg width="16px" height="16px" viewBox="0 0 16 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <title>元件/组件图标/提示/面</title>
    <g id="元件/组件图标/提示/面" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <path d="M8,16 C3.581722,16 0,12.418278 0,8 C0,3.581722 3.581722,0 8,0 C12.418278,0 16,3.581722 16,8 C16,12.418278 12.418278,16 8,16 Z M7.5,11.5 C7.5,11.7762581 7.72387097,12 8,12 C8.27612903,12 8.5,11.7762581 8.5,11.5 C8.5,11.2237419 8.27612903,11 8,11 C7.72387097,11 7.5,11.2237419 7.5,11.5 Z M8,4 C7.72385763,4 7.5,4.22385763 7.5,4.5 L7.5,9.5 C7.5,9.77614237 7.72385763,10 8,10 C8.27614237,10 8.5,9.77614237 8.5,9.5 L8.5,4.5 C8.5,4.22385763 8.27614237,4 8,4 Z" id="icon换色层" fill="#f2b044"></path>
    </g>
</svg>

搜索关键词,找到id="icon换色层" fill="#f2b044",替换fill的值为#df2222,那么就变成红色了。

你可以试试。

css改色利用过滤器filter

当你用的公司统一的svg格式的icon,但是颜色和这次的需求不一致,直接改svg文件可能影响其他显示,可以考虑css

看到这个,有人就要说了,还不如按方法1,改个颜色,然后复制下文件改名,粘贴,简单粗暴。

确实,可惜我们是前端,一点点优化也是优化,一点点体积也是体积(一点点味道一般,还是蜜雪冰城好喝)。css改色利用的是过滤器filter的drop-shadow属性,它的功能是可定点定位生成一个可调整模糊度以及颜色的投影,卧槽,真牛,感觉能做好多炫酷的东西,属实是彩色影分身术了。

具体代码:

<div style="position: relative; width: 20px; height: 20px; border: 1px solid;">
    <img src="./svg/img/demo1.svg" style="position:absolute; top: 0; left: 0; filter: drop-shadow(20px 0 #32bb65)"/>
</div>

效果如下:

然后我们调整下原本icon的位置,将它往左挪出去:left:-20px,代码如下:

<div style="position: relative; width: 20px; height: 20px; border: 1px solid;">
  <img src="./svg/img/demo1.svg" style="position:absolute; top: 0; left: -20px; filter: drop-shadow(20px 0 #32bb65)"/>
</div>

最后我们去掉方便识别的边框,并给div加上overflow:hidden,一个简单的icon改色就完成了!!好棒!!。

最后顺便介绍下filter: drop-shadow()

filter: drop-shadow(x, y, blurry, color),第一个参数距离源x轴的像素大小,第二个参数是距离源y轴的像素大小,第三个是模糊度,第四个是投影的颜色。

这是mdn的资料,有个很好看的实现:developer.mozilla.org/zh-CN/docs/…

这个蓝色底就是drop-shadow实现的。

最后看我多重影分身之术:

drop-shadow(20px 0 red) drop-shadow(20px 20px green) drop-shadow(20px 39px blue) drop-shadow(20px 0 skyblue)

原图是橙色,第一次是红色,第二次是绿色,第三次是蓝色,第四次是天蓝,每多一次drop-shadow,都会把上一次的图像复制一次,把上一次的作为原图进行投影,是裂变了没错!!

以上就是前端使用svg图片改色实现示例的详细内容,更多关于前端 svg图片改色的资料请关注真格学网其它相关文章!

您可能感兴趣的文章:Vue3中级指南之如何在vite中使用svg图标详解教你在vue项目中使用svg图标的方法vue中使用svg画路径图的详细介绍前端SVG样式颜色等开发注意事项vue项目中进行svg组件封装及配置方法步骤图文详解如何在vue3+vite项目中使用svg

  • 本文相关:
  • hadoop 分布式存储系统 hdfs的实例详解
  • git的基础文件操作初始化查看添加提交示例教程
  • 矩形相交以及求出相交的区域的原理解析
  • 如何用idea或者webstorm跑一个vue项目(步骤详解)
  • ffmpeg视频处理入门教程(新手必看)
  • idea最新激活码永久激活教程附激活失败原因汇总
  • 计算机科学中32个常用的基础算法
  • hadoop迁移数据应用实例详解
  • 编程语言里的静态、动态、强类型、弱类型等概念介绍
  • 全民学编程之 hello world
  • Photoshop CC 与前端那些事
  • 求大神指导,有没有前端学习视频,自己找了好多,感觉有点乱,觉得...
  • 如何在HTML中使用图标字体
  • 能不能把这个php转成js?
  • 野生程序员的故事
  • 六月设计圈最新干货合集第一波
  • UI设计师的盛宴:Web UI设计资源下载
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全javascriptasp.netphp编程ajax相关正则表达式asp编程jsp编程编程10000问css/htmlflex脚本加解密web2.0xml/rss网页编辑器相关技巧安全相关网页播放器其它综合dart首页其它综合vue3中级指南之如何在vite中使用svg图标详解教你在vue项目中使用svg图标的方法vue中使用svg画路径图的详细介绍前端svg样式颜色等开发注意事项vue项目中进行svg组件封装及配置方法步骤图文详解如何在vue3+vite项目中使用svghadoop 分布式存储系统 hdfs的实例详解git的基础文件操作初始化查看添加提交示例教程矩形相交以及求出相交的区域的原理解析如何用idea或者webstorm跑一个vue项目(步骤详解)ffmpeg视频处理入门教程(新手必看)idea最新激活码永久激活教程附激活失败原因汇总计算机科学中32个常用的基础算法hadoop迁移数据应用实例详解编程语言里的静态、动态、强类型、弱类型等概念介绍全民学编程之 hello world最新idea2021注册码永久激活(激活到2100年)intellij idea2020永久破解,亲测可用!!!关于最新idea2020.2.1,2.2,3以上破解,激活失最新idea2021最新激活超详细教程idea激活码最新获取方法(idea2020激活码汇总)最新intellij idea 2020删除svn三种方法delsvn(windows+linux)intellij idea 2020最新注册码(亲测有效,可git中tag标签的使用教程编码史记java idea入门使用手册(新手小白必备)grafana安装及使用教程详解elasticsearches通过坐标位置实现对附近人的搜索beyondcompare4下载安装使用超详细步骤typora+picgo+github实现md自带图床效果让程序员都费解的10大编程语言特性阿里巴巴开源 dragonwell jdk 最新版本 8.1.1-ga 发布
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved