通过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的方法
Aug 29 HTML / CSS
css3闪亮进度条效果实现思路及代码
Apr 17 HTML / CSS
一款恶搞头像特效的制作过程 利用css3和jquery
Nov 21 HTML / CSS
CSS3实现的炫酷菜单代码分享
Mar 12 HTML / CSS
使用CSS3制作一个简单的Chrome模拟器
Jul 15 HTML / CSS
CSS3毛玻璃效果(blur)有白边问题的解决方法
Nov 15 HTML / CSS
浅析CSS3 中的 transition,transform,translate之间区别和作用
Mar 26 HTML / CSS
详解css3 flex弹性盒自动铺满写法
Sep 17 HTML / CSS
canvas实现有递增动画的环形进度条的实现方法
Jul 10 HTML / CSS
html5贪吃蛇游戏使用63行代码完美实现
Jun 25 HTML / CSS
基于HTML5代码实现折叠菜单附源码下载
Nov 27 HTML / CSS
css中:last-child不生效的解决方法
Aug 05 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
人族 Terran 基本策略
2020/03/14 星际争霸
PHP无法访问远程mysql的问题分析及解决
2013/05/16 PHP
php输出1000以内质数(素数)示例
2014/02/16 PHP
smarty模板局部缓存方法使用示例
2014/06/17 PHP
PHP判断json格式是否正确的实现代码
2017/09/20 PHP
ThinkPHP框架实现的邮箱激活功能示例
2018/06/15 PHP
PHP 出现 http500 错误的解决方法
2021/03/09 PHP
经典海量jQuery插件 大家可以收藏一下
2010/02/07 Javascript
改写一个简单的菜单 弹性大小
2010/12/02 Javascript
使用PHP+JQuery+Ajax分页的实现
2013/04/23 Javascript
Extjs3.0 checkboxGroup 动态添加item实现思路
2013/08/14 Javascript
JavaScript显示当前文档最后修改日期的方法
2015/03/19 Javascript
分享纯手写漂亮的表单验证
2015/11/19 Javascript
jQuery使用$.ajax提交表单完整实例
2015/12/11 Javascript
JS利用cookies设置每隔24小时弹出框
2017/04/20 Javascript
angular中ui calendar的一些使用心得(推荐)
2017/11/03 Javascript
vue中简单弹框dialog的实现方法
2018/02/26 Javascript
JS中获取 DOM 元素的绝对位置实例详解
2018/04/23 Javascript
在vue.js中使用JSZip实现在前端解压文件的方法
2018/09/05 Javascript
jQuery pager.js 插件动态分页功能实例分析
2019/08/02 jQuery
JavaScript或jQuery 获取option value值方法解析
2020/05/12 jQuery
解决Vue的文本编辑器 vue-quill-editor 小图标样式排布错乱问题
2020/08/03 Javascript
[01:39](回顾)各路豪强针锋相对,几经鏖战四强产生
2014/07/01 DOTA
python批量提取word内信息
2015/08/09 Python
python+opencv打开摄像头,保存视频、拍照功能的实现方法
2019/01/08 Python
python使用Qt界面以及逻辑实现方法
2019/07/10 Python
python实现两个一维列表合并成一个二维列表
2019/12/02 Python
python计算导数并绘图的实例
2020/02/29 Python
澳大利亚旅游网站:Lastminute
2017/08/07 全球购物
Nike香港官网:Nike HK
2019/03/23 全球购物
旷课检讨书大全
2014/01/21 职场文书
停电放假通知
2015/04/14 职场文书
2015年药品销售工作总结范文
2015/05/25 职场文书
就业指导讲座心得体会
2016/01/15 职场文书
最美劳动诗,致敬所有的劳动者!
2019/07/12 职场文书
html5移动端禁止长按图片保存的实现
2021/04/20 HTML / CSS