css3实现背景图片颜色修改的多种方式


Posted in HTML / CSS onApril 13, 2021

css3可以改变图片的颜色了。从此再也不用设计出多张图,而且随时可以修改。下面就简单介绍下css3中是如何做到改变背景图片的颜色效果的。

方式一:利用css3滤镜filter中的 drop-shadow

代码如下:

<style>
.icon{
    display: inline-block;
    width: 180px;
    height: 180px;
    background: url('img/XXX.png') no-repeat center  cover;
    overflow: hidden;
}
.icon:after{
    content: '';
    display: block;
    height: 100%;
    transform: translateX(-100%);
    background: inherit;
    filter: drop-shadow(144px 0 0 #fff); //需要修改的颜色值
}
</style>
 
<i class="icon"></i>

说明:

drop-shadow 滤镜可以给元素或图片非透明区域添加投影

将背景透明的 PNG 图标施加一个不带模糊的投影,就等同于生成了另外一个颜色的图标

再通过 overflow:hidden 和位移处理将原图标隐藏

mix-blend-mode 取值情况:【除了最后3个,大体和ps效果一样】

mix-blend-mode: normal; // 正常
mix-blend-mode: multiply; // 正片叠底
mix-blend-mode: screen; // 滤色
mix-blend-mode: overlay; // 叠加
mix-blend-mode: darken; // 变暗
mix-blend-mode: lighten; // 变亮
mix-blend-mode: color-dodge; // 颜色减淡
mix-blend-mode: color-burn; // 颜色加深
mix-blend-mode: hard-light; // 强光
mix-blend-mode: soft-light; // 柔光
mix-blend-mode: difference; // 差值
mix-blend-mode: exclusion; // 排除
mix-blend-mode: hue; // 色相
mix-blend-mode: saturation; // 饱和度
mix-blend-mode: color; // 颜色
mix-blend-mode: luminosity; // 亮度
mix-blend-mode: initial; // 默认
mix-blend-mode: inherit; // 继承
mix-blend-mode: unset; // 还原

方式二:利用css3的mix-blend-mode 和 background-blend-mode

代码如下:

<style>
.icon{
    display: inline-block;
    width: 180px;
    height: 180px;
    background-image: url($'img/XXX.png'), linear-gradient(#f00, #f00);
    background-blend-mode: lighten;
    background-size: cover;
}
</style>
<i class="icon"></i>

说明:

lighten这个混合模式:变亮、变亮模式与变暗模式产生的效果相反,黑色比任何颜色都要暗,所以黑色会被任何色替换掉。反之,如果素材的底色是黑色,主色是白色。那就应该用变暗(darken)的混合模式  。

linear-gradient(#f00,  #00f )还可以实现渐变颜色的效果哦。 

总结:

方式一局限于png格式的图片,方式二不限制图片的格式。

css3具有一定的兼容性。chrome、Firefo、移动端较为适合使用。

到此这篇关于css3实现背景图片颜色修改的多种方式的文章就介绍到这了,更多相关css3背景图片颜色修改内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
实例讲解使用CSS实现多边框和透明边框的方法
Sep 08 HTML / CSS
前端隐藏出边界内容的实现方法
Apr 14 HTML / CSS
CSS中越界问题的经典解决方案【推荐】
Apr 19 HTML / CSS
利用CSS3伪元素实现逐渐发光的方格边框
May 07 HTML / CSS
css3如何绘制一个圆圆的loading转圈动画
Jan 09 HTML / CSS
CSS3实现缺角矩形,折角矩形以及缺角边框
Dec 20 HTML / CSS
websocket+sockjs+stompjs详解及实例代码
Nov 30 HTML / CSS
使用分层画布来优化HTML5渲染的教程
May 08 HTML / CSS
浅谈基于HTML5的在线视频播放方案
Feb 18 HTML / CSS
HTML5中原生的右键菜单创建方法
Jun 28 HTML / CSS
HTML5打开手机扫码功能及优缺点
Nov 27 HTML / CSS
html5用video标签流式加载的实现
May 20 HTML / CSS
CSS3 制作的悬停缩放特效
Apr 13 #HTML / CSS
CSS3 制作的书本翻页特效
浅谈移动端中的视口(viewport)的具体使用
老生常谈 使用 CSS 实现三角形的技巧(多种方法)
CSS3 制作的彩虹按钮样式
CSS中em的正确打开方式详解
几款流行的HTML5 UI框架比较(小结)
You might like
php强制更新图片缓存的方法
2015/02/11 PHP
点击下载链接 弹出页面实现代码
2009/10/01 Javascript
有效的捕获JavaScript焦点的方法小结
2009/10/08 Javascript
基于jquery的地址栏射击游戏代码
2011/03/10 Javascript
jQuery循环动画与获取组件尺寸的方法
2015/02/02 Javascript
JS点击链接后慢慢展开隐藏着图片的方法
2015/02/17 Javascript
深入分析JSON编码格式提交表单数据
2015/06/25 Javascript
微信小程序 获取当前地理位置和经纬度实例代码
2016/12/05 Javascript
本地存储localStorage用法详解
2017/07/31 Javascript
JavaScript requestAnimationFrame动画详解
2017/09/14 Javascript
js实现数组和对象的深浅拷贝
2017/09/30 Javascript
原生JS实现的简单轮播图功能【适合新手】
2018/08/17 Javascript
浅谈Vue.js组件(二)
2019/04/09 Javascript
layui多iframe页面控制定时器运行的方法
2019/09/05 Javascript
JavaScript中遍历的十种方法总结
2020/12/15 Javascript
python中的yield使用方法
2014/02/11 Python
Python中操作mysql的pymysql模块详解
2016/09/13 Python
详解Python nose单元测试框架的安装与使用
2017/12/20 Python
Python实现的序列化和反序列化二叉树算法示例
2019/03/02 Python
python判断两个序列的成员是否一样的实例代码
2020/03/01 Python
python 无损批量压缩图片(支持保留图片信息)的示例
2020/09/22 Python
Python Charles抓包配置实现流程图解
2020/09/29 Python
浅谈Selenium 控制浏览器的常用方法
2020/12/04 Python
HTML5触摸事件(touchstart、touchmove和touchend)的实现
2020/05/08 HTML / CSS
时尚孕妇装:HATCH Collection
2019/09/24 全球购物
瑞士首家网上药店折扣店:McDrogerie
2020/12/22 全球购物
物流管理毕业生自荐信
2013/10/24 职场文书
幼儿园家长会邀请函
2014/01/15 职场文书
舞蹈专业求职信
2014/06/13 职场文书
反对四风自我剖析材料
2014/10/07 职场文书
2015年体育部工作总结
2015/04/02 职场文书
2015年后勤工作总结范文
2015/04/08 职场文书
学习新党章心得体会2016
2016/01/15 职场文书
带你彻底理解JavaScript中的原型对象
2021/04/14 Javascript
【海涛教你打DOTA】黑鸟第一视角解说
2022/04/01 DOTA
详解Flutter自定义应用程序内键盘的实现方法
2022/06/14 Java/Android