CSS改变图片颜色的三种方法

文章介绍了如何使用CSS的filter属性中的drop-shadow来设置图片阴影,以及background-blend-mode属性创建背景的混合模式,展示了lighten模式下的渐变效果。同时,提到了使用SVG进行图形渲染,并通过改变fill属性调整颜色。
摘要由CSDN通过智能技术生成

一.filter: drop-shadow(). 设置图片的阴影

<div class="img_box"><img /></div>

//css样式

.img_box {

  width: 53px;

  height: 53px;

  overflow: hidden;

  position: relative;

}

. img {

  position: absolute;

  width: 53px;

  height: 53px;

  filter: drop-shadow(70px 0 0 #EA5E30)      //关键

}

 二.background-blend-mode 背景的混合模式

.pic1 {

background-image: url($img), linear-gradient(#f00, #f00);

background-blend-mode: lighten;

background-size: cover;

}

效果如下:

 

也可以实现渐变的效果

.pic1 {

background-image: url($img), linear-gradient(#f00, #00f);

background-blend-mode: lighten;

background-size: cover;

}

效果如下:

 

 

 

 二.svg方法

<svg t="1653466467217" class="icon1" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3355" width="200" height="200"><path d="xxx"></path></svg>

<svg t="1653466467217" class="icon2" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3355" width="200" height="200"><path d="xxx"></path></svg>

//css样式

<style>

.icon2{

  fill: #f61f41;

}

</style>

 

CSS中,可以使用一些属性来改变图片部分元素的颜色。 首先,可以使用filter属性来改变图片的色调。filter属性允许我们应用不同的视觉效果到元素上,包括改变颜色。其中,最常用的属性是hue-rotate(),可以通过旋转色相的角度来改变图片颜色。例如,filter: hue-rotate(45deg);会将图片颜色向右旋转45度。 其次,可以使用background-blend-mode属性来改变图片元素的背景颜色。通过设置不同的blend模式,可以调整图片与背景色之间的混合效果。常见的一些blend模式有multiply(叠加),screen(屏幕),overlay(叠加),color-dodge(颜色减淡)等等。例如,background-blend-mode: multiply;会将图片与背景色进行叠加,产生某种颜色效果。 此外,还可以使用CSS的伪元素:before和:after来为图片添加背景颜色层。通过设置伪元素的背景颜色、位置和大小等属性,可以实现在图片上添加彩色效果。例如,可以使用:before来添加一个半透明的蓝色遮罩层,使图片呈现蓝色调。 最后,还可以使用CSS3的mask属性来实现图片颜色遮罩效果。通过设置mask-image属性为线性渐变或径向渐变,可以实现对图片的部分元素进行颜色遮罩。mask-position和mask-size属性可以设置遮罩的位置和大小。例如,可以使用linear-gradient来创建一个从红色到透明的渐变,然后将其应用于mask-image,实现对图片的部分元素进行红色遮罩。 总之,通过使用filter属性、background-blend-mode属性、伪元素和mask属性等技术,可以在CSS改变图片部分元素的颜色。这些方法提供了一些灵活的手段,让我们可以实现各种各样的颜色效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值