QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

手机号码,快捷登录

手机号码,快捷登录

查看: 1650|回复: 0

[HTML/CSS/JS] css3实现背景图片颜色修改的多种方式

[复制链接]

等级头衔

积分成就    金币 : 2841
   泡泡 : 1516
   精华 : 6
   在线时间 : 1294 小时
   最后登录 : 2024-11-21

丰功伟绩

优秀达人突出贡献荣誉管理论坛元老

联系方式
发表于 2021-4-14 17:05:35 | 显示全部楼层 |阅读模式
       css3可以改变图片的颜色了。从此再也不用设计出多张图,而且随时可以修改。下面就简单介绍下css3中是如何做到改变背景图片的颜色效果的。6 D( Z4 W5 T2 h6 g1 C" X
方式一:利用css3滤镜filter中的 drop-shadow# p. o, _: O$ d% E
       代码如下:# d% q, t2 `% V; p/ y# ^
  1. <style>
  2. .icon{
  3.     display: inline-block;
  4.     width: 180px;
  5.     height: 180px;
  6.     background: url('img/XXX.png') no-repeat center  cover;
  7.     overflow: hidden;
  8. }
  9. .icon:after{
  10.     content: '';
  11.     display: block;
  12.     height: 100%;
  13.     transform: translateX(-100%);
  14.     background: inherit;
  15.     filter: drop-shadow(144px 0 0 #fff); //需要修改的颜色值
  16. }
  17. </style>
  18. <i class="icon"></i>
说明:
, r  K0 j3 v0 p. Z6 ?8 G4 _/ W( Z$ z       drop-shadow 滤镜可以给元素或图片非透明区域添加投影,将背景透明的 PNG 图标施加一个不带模糊的投影,就等同于生成了另外一个颜色的图标,再通过 overflow:hidden 和位移处理将原图标隐藏。6 h, T3 [3 V. v+ a6 y
       mix-blend-mode 取值情况:【除了最后3个,大体和ps效果一样】2 ~6 N# J' ]( ?7 U, T& k/ E& K9 q$ A
  1. mix-blend-mode: normal; // 正常
  2. mix-blend-mode: multiply; // 正片叠底
  3. mix-blend-mode: screen; // 滤色
  4. mix-blend-mode: overlay; // 叠加
  5. mix-blend-mode: darken; // 变暗
  6. mix-blend-mode: lighten; // 变亮
  7. mix-blend-mode: color-dodge; // 颜色减淡
  8. mix-blend-mode: color-burn; // 颜色加深
  9. mix-blend-mode: hard-light; // 强光
  10. mix-blend-mode: soft-light; // 柔光
  11. mix-blend-mode: difference; // 差值
  12. mix-blend-mode: exclusion; // 排除
  13. mix-blend-mode: hue; // 色相
  14. mix-blend-mode: saturation; // 饱和度
  15. mix-blend-mode: color; // 颜色
  16. mix-blend-mode: luminosity; // 亮度
  17. mix-blend-mode: initial; // 默认
  18. mix-blend-mode: inherit; // 继承
  19. mix-blend-mode: unset; // 还原
方式二:利用css3的mix-blend-mode 和 background-blend-mode3 Z- w' {* I8 \# v9 ~% ^
       代码如下:6 g" B9 i% n" U& v
  1. <style>
  2. .icon{
  3.     display: inline-block;
  4.     width: 180px;
  5.     height: 180px;
  6.     background-image: url(说明:
  7.        lighten这个混合模式:变亮、变亮模式与变暗模式产生的效果相反,黑色比任何颜色都要暗,所以黑色会被任何色替换掉。反之,如果素材的底色是黑色,主色是白色。那就应该用变暗(darken)的混合模式  。
  8.        linear-gradient(#f00,  #00f )还可以实现渐变颜色的效果哦。
  9. [b]总结:[/b]
  10.        方式一局限于png格式的图片,方式二不限制图片的格式。css3具有一定的兼容性。chrome、Firefo、移动端较为适合使用。
  11. img/XXX.png'), linear-gradient(#f00, #f00);
  12.     background-blend-mode: lighten;
  13.     background-size: cover;
  14. }
  15. </style>
  16. <i class="icon"></i>
说明:
- q3 p; A1 m' ]6 p3 z3 M       lighten这个混合模式:变亮、变亮模式与变暗模式产生的效果相反,黑色比任何颜色都要暗,所以黑色会被任何色替换掉。反之,如果素材的底色是黑色,主色是白色。那就应该用变暗(darken)的混合模式  。
$ h1 k* {4 b$ a6 a0 u       linear-gradient(#f00,  #00f )还可以实现渐变颜色的效果哦。
1 X0 e  g8 i7 y1 n" t总结:
6 I7 J1 V6 I  O/ x1 G       方式一局限于png格式的图片,方式二不限制图片的格式。css3具有一定的兼容性。chrome、Firefo、移动端较为适合使用。
/ g$ b. q, K1 X  e! j
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|paopaomj.COM ( 渝ICP备18007172号|渝公网安备50010502503914号 )

GMT+8, 2024-11-21 23:15

Powered by paopaomj X3.5 © 2016-2025 sitemap

快速回复 返回顶部 返回列表