当前位置: 首页 > news >正文

img引入svg如何修改颜色

方法1:通过css中filter:drop-shadow

首先需要一个容纳图标的父盒子(下方实例中的.svg-img),通过css造一个图标的‘影子’(.svg-color中的drop-shadow),然后设置‘影子’的颜色,再把图标本体移出父盒子,让‘影子’占据本体所在位置,最后后对父盒子设置溢出隐藏达到效果

drop-shadow 语法:

filter: drop-shadow( offset-x offset-y blur-radius spread-radius color ) 
filter: drop-shadow( x轴偏移 y轴偏移 模糊半径 传播半径 投影颜色);

具体实现:

<div class="svg-img"> <img class="svg-color" :src="svgUrl"> 
</div>
<script setup>
import { ref } from 'vue';
import svgUrl from './icons/weather/100.svg'; // 使用import语法引入SVGconst svgUrlRef = ref(svgUrl); // 使用ref来创建响应式数据
</script>
.svg-img { width: 60px; height: 60px; overflow: hidden; display: inline-block; >.svg-color{ width: 100%; height: 100%; transform: translateX(60px); filter: drop-shadow(#684a2c -60px 0px 0px); } 
}

translateX中的60px和drop-shadow中的-60px必须是一个相同的值,并且最好是大于等于宽高的最大值,这样设置得到的带颜色的阴影图片才会完整无误的在本体图片位置上。

方法2:通过mask-image 属性引入svg图标并使用 background-color 改变svg图标颜色

<img class="svg-color" :style="{ WebkitMaskImage: `url(${svgUrl})`, maskImage: `url(${svgUrl})` }" 
>
<script setup>
import { ref } from 'vue';
import svgUrl from './icons/weather/100.svg'; // 使用import语法引入SVGconst svgUrlRef = ref(svgUrl); // 使用ref来创建响应式数据
</script>
.svg-color{ width: 60px; height: 60px; display: inline-block; background-color: #684a2c; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain;mask-size: contain; 
}
http://www.lryc.cn/news/503855.html

相关文章:

  • 计算机毕业设计PySpark+PyFlink+Hive地震预测系统 地震数据分析可视化 地震爬虫 大数据毕业设计 Hadoop 机器学习 深度学习
  • 【Python】使用Numpy实现余弦相似度计算
  • nginx中的root和alias的区别
  • 探索Telnet:实现Windows远程登录Ubuntu的实践指南
  • 在 Vue 2 中隐藏页面元素的方法
  • 【Java】Java8的4个函数式接口简单教程
  • 计算机组成原理与系统结构——微程序控制
  • 【Swift】集合类型 - 数组、集合、字典
  • 3D 视觉定位技术:汽车零部件制造的智能变革引擎
  • 操作系统的基本认识
  • 使用pycharm连接远程服务器
  • 【Linux SH脚本】LinuxCheck 应急检查信息脚本
  • apifox创建一个mock接口
  • 设计一个基础JWT的多开发语言分布式电商系统
  • 委托(Delegate)与事件(Event)-(上篇)
  • Scala根据身份证前两位数判断地区
  • freeswitch(开启支持视频H264通话)
  • 启发式搜索算法和优化算法的区别
  • 数据结构初阶---二叉树---堆
  • 微信小程序中 crypto-js 加解密全攻略
  • 单片机的软件开发环境
  • 【echarts】数据过多时可以左右滑动查看(可鼠标可滚动条)
  • Python 实现对人的行为预测
  • 使用枚举实现单例模式,不会反序列化破坏攻击,不会被反射破坏攻击。(附带枚举单例的简单实现)
  • scala隐式转换
  • Spring Boot 应用 “Connection is closed” 及 MySQL 空闲超时断开连接解决方案
  • SLF4J框架原理及其实现方案
  • 代码随想录-算法训练营-番外(图论01:图论理论基础,所有可到达的路径)
  • 【JAVA】Java项目实战—Java EE项目:企业资源规划(ERP)系统
  • springboot配置过滤器解决html资源路径和接口路径冲突问题