纯CSS 实现 img 图片换色

svg 图片可以直接用 color来进行换色,但是像 png 这样的图片却不可以通过 color 来换色,而在日常开发过程中通常会遇到设计那边要求图片在 hover 时换色,那么怎么利用 CSS 来完成这个效果呢。

css 复制代码
// 这里使用的是less嵌套规则
 &:hover {
   img {
     transform: translateY(-200px);
     filter: drop-shadow(#ffd283 0 200px);
   }
}

这里主要使用 filtertransform来完成这个效果,drop-shadow第一个参数是hover时的颜色,后两个参数分别是 X、Y 轴的偏移量。这里的原理就是让原本的 img 偏移处用户视图区域(偏移值可以更改),然后让新的图片偏移到原img的位置。

相关推荐
郭wes代码13 小时前
纯 CSS+JS 实战:手搓一张支持自定义的通用金色电子奖状(万字详细拆解)
前端·javascript·css
阿黎梨梨14 小时前
React 表单处理与性能优化:从入门到进阶
前端·react.js
Whbbit199914 小时前
发布自己的 shadcn-vue 扩展组件,并支持 CLI 安装
前端·开源
Tian_Hang14 小时前
Vue3 父子组件通讯
前端·javascript·vue.js
breeze jiang14 小时前
React memo、useCallback 与 useMemo:父组件多状态时如何减少无效渲染
前端·javascript·react.js
小黑技术栈14 小时前
Java前端基础到入门——16day
java·开发语言·前端
朱涛的自习室15 小时前
从 Prompt 到 Graph:AI 工程的进化史
android·前端·人工智能
敲代码的玉米C16 小时前
让两个模型一写一审
前端·人工智能·架构
代码不加糖16 小时前
common.js和es6中模块引l入的区别?
前端·javascript·es6
qq834431016 小时前
一款纯前端的excel控件,XuY_Sheet 电子表格组件教程
前端·excel·教程·luckysheet·xuy_sheet控件·前端表格控件