通过css3的filter滤镜改变png图片的颜色的示例代码


Posted in HTML / CSS onMay 06, 2020

本方法是通过CSS3滤镜 filter 中的 drop-shadow 将png图片的非透明部分生成任意颜色的投影,然后将原始图片隐藏起来,从而达到改变图片颜色的目的
先看效果图

通过css3的filter滤镜改变png图片的颜色的示例代码

接下来是代码

<p><strong>原始图标</strong></p>
<i class="icon icon-del"></i>
<p><strong>可以变色的图标</strong></p>
<i class="icon"><i class="icon icon-del"></i></i>

 

.icon {
    display: inline-block;
    width: 20px; height: 20px;
    overflow: hidden;
}
.icon-del {
    background: url(delete.png) no-repeat center;
}
.icon > .icon {
    position: relative;
    left: -20px;
    border-right: 20px solid transparent;
    -webkit-filter: drop-shadow(#0033FF 20px 0);
    filter: drop-shadow(#0033FF 20px 0);
}

注意其中很关键的一处

border-right: 20px solid transparent;

在Chrome浏览器下,如果一个元素的主体部分,无论以何种方式,只要在页面中不可见,其drop-shadow是不可见的;实体部分哪怕有1像素可见,则drop-shadow完全可见。

由于我们使用使用 overflow:hidden 隐藏掉了原始图标,所以导致其投影在Chrome浏览器上是无法正常显示的,我们通过加透明的边框来解决这一点。

总结

到此这篇关于通过css3的filter滤镜改变png图片的颜色的文章就介绍到这了,更多相关CSS改变png图片颜色内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

HTML / CSS 相关文章推荐
css3实现信纸/同学录效果的示例代码
Dec 11 HTML / CSS
HTML5 CSS3给网站设计带来出色效果
Jul 16 HTML / CSS
纯css3实现的竖形无限级导航
Dec 10 HTML / CSS
纯CSS3绘制打火机动画火焰效果
Jul 18 HTML / CSS
详解CSS3新增的背景属性
Dec 25 HTML / CSS
html5定制表单_动力节点Java学院整理
Jul 11 HTML / CSS
HTML5的表单(绝对特别强大的功能)使用示例
Jun 20 HTML / CSS
canvas实现按住鼠标移动绘制出轨迹的示例代码
Feb 05 HTML / CSS
html5手机端页面可以向右滑动导致样式受影响的问题
Jun 20 HTML / CSS
前端实现弹幕效果的方法总结(包含css3和canvas的实现方式)
Jul 12 HTML / CSS
html5 canvas 实现光线沿不规则路径运动
Apr 20 HTML / CSS
HTML5触摸事件(touchstart、touchmove和touchend)的实现
May 08 HTML / CSS
基于ccs3的timeline时间线实现方法
Apr 30 #HTML / CSS
CSS3实现div从下往上滑入滑出效果示例
Apr 28 #HTML / CSS
深入浅析CSS3中的Flex布局整理
Apr 27 #HTML / CSS
纯CSS3实现移动端展开和收起效果的示例代码
Apr 26 #HTML / CSS
CSS实现聊天气泡效果
Apr 26 #HTML / CSS
css3 实现元素弧线运动的示例代码
Apr 24 #HTML / CSS
css3中less实现文字长阴影(long shadow)
Apr 24 #HTML / CSS
You might like
mantis安装、配置和使用中的问题小结
2014/07/14 PHP
Symfony控制层深入详解
2016/03/17 PHP
详解PHP中mb_strpos的使用
2018/02/04 PHP
PHP两个n位的二进制整数相加问题的解决
2018/08/26 PHP
laravel 解决paginate查询多个字段报错的问题
2019/10/22 PHP
php查看一个变量的占用内存的实例代码
2020/03/29 PHP
JSON 编辑器实现代码
2009/12/06 Javascript
JavaScript必知必会(六) delete in instanceof
2016/06/08 Javascript
JS中的数组方法笔记整理
2016/07/26 Javascript
微信小程序 Flex布局详解
2016/10/09 Javascript
Bootstrap 3 进度条的实现
2017/02/22 Javascript
JS仿Base.js实现的继承示例
2017/04/07 Javascript
JS验证全角与半角及相互转化的介绍
2017/05/18 Javascript
vue.js 上传图片实例代码
2017/06/22 Javascript
详解给Vue2路由导航钩子和axios拦截器做个封装
2018/04/10 Javascript
JavaScript使用类似break机制中断forEach循环的方法
2018/11/13 Javascript
详解vue父子组件关于模态框状态的绑定方案
2019/06/05 Javascript
JS document form表单元素操作完整示例
2020/01/13 Javascript
Vue中实现回车键切换焦点的方法
2020/02/19 Javascript
JS如何生成随机验证码
2020/03/02 Javascript
vue 使用lodash实现对象数组深拷贝操作
2020/09/10 Javascript
python在不同层级目录import模块的方法
2016/01/31 Python
Python的for和break循环结构中使用else语句的技巧
2016/05/24 Python
Python实现统计代码行的方法分析
2017/07/12 Python
Python温度转换实例分析
2018/01/17 Python
一篇文章搞懂Python的类与对象名称空间
2018/12/10 Python
python实现打砖块游戏
2020/02/25 Python
python中adb有什么功能
2020/06/07 Python
python 通过exifread读取照片信息
2020/12/24 Python
纽约现代艺术博物馆商店:MoMA STORE(室内家具和杂货商品)
2016/08/02 全球购物
网络事业创业计划书范文
2014/01/09 职场文书
法学专业求职信范文
2015/03/19 职场文书
2015年售票员工作总结
2015/04/29 职场文书
2016年五一劳动节专题校园广播稿
2015/12/17 职场文书
反四风问题学习心得体会
2016/01/22 职场文书
vue封装数字翻牌器
2022/04/20 Vue.js