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 相关文章推荐
CSS3使用多列制作瀑布流
May 10 HTML / CSS
CSS3 2D模拟实现摩天轮旋转效果
Nov 16 HTML / CSS
HTML5+CSS3 诱人的实例:3D立方体旋转动画实例
Dec 30 HTML / CSS
CSS3 Calc实现滚动条出现页面不跳动问题
Sep 14 HTML / CSS
html5指南-4.使用Geolocation实现定位功能
Jan 07 HTML / CSS
使用phonegap获取位置信息的实现方法
Mar 31 HTML / CSS
详解canvas绘图时遇到的跨域问题
Mar 22 HTML / CSS
HTML5拍照和摄像机功能实战详解
Jan 24 HTML / CSS
HTML5 Canvas 实现K线图的示例代码
Dec 23 HTML / CSS
CSS 一行代码实现头像与国旗的融合
Oct 24 HTML / CSS
Html5获取用户当前位置的几种方式
Jan 18 HTML / CSS
html网页引入svg图片的4种方式
Aug 05 HTML / CSS
CSS3 制作的悬停缩放特效
Apr 13 #HTML / CSS
CSS3 制作的书本翻页特效
浅谈移动端中的视口(viewport)的具体使用
老生常谈 使用 CSS 实现三角形的技巧(多种方法)
CSS3 制作的彩虹按钮样式
CSS中em的正确打开方式详解
几款流行的HTML5 UI框架比较(小结)
You might like
php for 循环语句使用方法详细说明
2010/05/09 PHP
php操作xml
2013/10/27 PHP
php实现mysql封装类示例
2014/05/07 PHP
php求一个网段开始与结束IP地址的方法
2015/07/09 PHP
JQuery.closest(),parent(),parents()寻找父结点
2012/02/17 Javascript
JQuery 文本框回车跳到下一个文本框示例代码
2013/08/30 Javascript
jquery的ajax和getJson跨域获取json数据的实现方法
2014/02/04 Javascript
超实用的JavaScript代码段 附使用方法
2016/05/22 Javascript
js时间比较 js计算时间差的简单实现方法
2016/08/26 Javascript
jQuery基本过滤选择器用法示例
2016/09/09 Javascript
jquery 追加元素append、prepend、before、after用法与区别分析
2016/12/02 Javascript
jquery与js实现全选功能的区别
2017/06/11 jQuery
[原创]jquery判断元素内容是否为空的方法
2018/05/04 jQuery
微信小程序自定义prompt组件步骤详解
2018/06/12 Javascript
微信小程序使用wxParse解析html的方法示例
2019/01/17 Javascript
关于微信小程序获取小程序码并接受buffer流保存为图片的方法
2019/06/07 Javascript
微信小程序顶部导航栏可滑动并选中放大
2019/12/05 Javascript
ant design vue中日期选择框混合时间选择器的用法说明
2020/10/27 Javascript
python生成日历实例解析
2014/08/21 Python
python在windows命令行下输出彩色文字的方法
2015/03/19 Python
Python使用Paramiko模块编写脚本进行远程服务器操作
2016/05/05 Python
python实现图片识别汽车功能
2018/11/30 Python
基于python实现KNN分类算法
2020/04/23 Python
pyqt5利用pyqtDesigner实现登录界面
2019/03/28 Python
Python简单基础小程序的实例代码
2019/04/28 Python
python科学计算之numpy——ufunc函数用法
2019/11/25 Python
Python生成六万个随机,唯一的8位数字和数字组成的随机字符串实例
2020/03/03 Python
Python3开发环境搭建详细教程
2020/06/18 Python
英国著名的美容护肤和护发产品购物网站:Lookfantastic
2020/11/23 全球购物
警察群众路线对照检查材料思想汇报
2014/10/01 职场文书
手机被没收的检讨书
2014/10/04 职场文书
三行辞职书范文
2015/02/26 职场文书
表彰大会新闻稿
2015/07/17 职场文书
2016年师德师风学习心得体会
2016/01/12 职场文书
Go语言特点及基本数据类型使用详解
2022/03/21 Golang
win10系统计算机图标怎么调出来?win10调出计算机图标的方法
2022/08/14 数码科技