通过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 给页面加个半圆形导航条主要利用旋转和倾斜样式
Feb 10 HTML / CSS
推荐10个CSS3 制作的创意下拉菜单效果
Feb 11 HTML / CSS
使用css3实现的windows8开机加载动画
Dec 09 HTML / CSS
CSS3实现文本垂直排列的方法
Jul 10 HTML / CSS
几个解决兼容IE6\7\8不支持html5标签的几个方法
Jan 07 HTML / CSS
解析HTML5中的新功能本地存储localStorage
Mar 01 HTML / CSS
HTML5+css3:3D旋转木马效果相册
Jan 03 HTML / CSS
详解快速开发基于 HTML5 网络拓扑图应用
Jan 08 HTML / CSS
HTML5 input新增type属性color颜色拾取器的实例代码
Aug 27 HTML / CSS
iframe在移动端的缩放的示例代码
Oct 12 HTML / CSS
手对手的教你用canvas画一个简单的海报的方法示例
Dec 10 HTML / CSS
HTML5自定义元素播放焦点图动画的实现
Sep 25 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
php 连接mssql数据库 初学php笔记
2010/03/01 PHP
php中HTTP_REFERER函数用法实例
2014/11/21 PHP
使用PHP实现生成HTML静态页面
2015/11/18 PHP
微信支付之JSAPI公众号支付详解
2019/05/15 PHP
用window.location.href实现刷新另个框架页面
2007/03/07 Javascript
预加载css或javascript的js代码
2010/04/23 Javascript
JavaScript 命名空间 使用介绍
2013/08/29 Javascript
FireBug 调试JS入门教程 如何调试JS
2013/12/23 Javascript
js原型继承的两种方法对比介绍
2014/03/30 Javascript
深入学习JavaScript的AngularJS框架中指令的使用方法
2016/03/05 Javascript
总结Node.js中的一些错误类型
2016/08/15 Javascript
JavaScript对象创建模式实例汇总
2016/10/03 Javascript
深入理解jquery中的each用法
2016/12/14 Javascript
nodejs 最新版安装npm 的使用详解
2018/01/18 NodeJs
小程序scroll-view组件实现滚动的示例代码
2018/09/20 Javascript
vue使用el-upload上传文件及Feign服务间传递文件的方法
2019/03/15 Javascript
详解Nuxt.js中使用Element-UI填坑
2019/09/06 Javascript
JavaScript利用键盘码控制div移动
2020/03/19 Javascript
按日期打印Python的Tornado框架中的日志的方法
2015/05/02 Python
利用django如何解析用户上传的excel文件
2017/07/24 Python
python处理数据,存进hive表的方法
2018/07/04 Python
python爬取指定微信公众号文章
2018/12/20 Python
Pandas读取并修改excel的示例代码
2019/02/17 Python
python读出当前时间精度到秒的代码
2019/07/05 Python
python实现拼接图片
2020/03/23 Python
HTML5 Canvas实现玫瑰曲线和心形图案的代码实例
2014/04/10 HTML / CSS
前端面试必备之html5的新特性
2017/09/05 HTML / CSS
菲律宾票务网站:StubHub菲律宾
2018/04/21 全球购物
Nike挪威官网:Nike.com (NO)
2018/11/26 全球购物
合作意向协议书范本
2014/03/31 职场文书
青年志愿者活动总结
2014/04/26 职场文书
秋天的图画教学反思
2014/05/01 职场文书
大学生党性分析材料
2014/12/19 职场文书
秋季运动会开幕词
2015/01/28 职场文书
百年校庆宣传标语口号
2015/12/26 职场文书
redis 查看所有的key方式
2021/05/07 Redis