java中颜色修改为图片_教你如何用CSS修改图片颜色

看到题目是不是吓了一跳?css竟然还有这个操作?还真是第一次听说~

1ccb6cb3c6c9c8405355b7fab1a51d4a.png

原理嘛,其实很简单的,用到的就是 CSS3 滤镜filter中的drop-shadow,该滤镜可以给图片非透明区域添加投影。你可以理解为下图

e0603d21dd4ada74954ebf7002fb02fd.png

它实现的效果看上去就像使原来的对象离开页面,然后在页面上显示出该对象的投影。是有一点类似box-shadow,但是二者还是有显著差别的,我后面会写一篇专门的文章来比较二者的差别。

先来看一下语法:

filter:drop-shadow(水平阴影偏移距离 垂直阴影偏移距离 投射的阴影颜色 );

我们准备一张背景色是透明的图片(图片尺寸40px X 40px),

用一个div将该图片包裹住,给图片添加

filter: drop-shadow(40px 40px yellow)

这段代码,代表投射出一个和该图片一样的形状,

三个参数分别代表:

水平向右移动40px,

垂直向下移动40px,

投射出的形状颜色为黄色。

.box{

width: 40px;

height: 40px;

border: 1px solid red;

margin: 200px auto;

}

.pic{

filter: drop-shadow(40px 40px yellow);

}

效果为

6047c49ef06e3c94dbd53b8ea9e4f8be.png

接下来我们稍微更改一下原代码,将原图设置在div外部并隐藏,变色后的投影放置在div中

.box{

width: 40px;

height: 40px;

border: 1px solid red;

margin: 200px auto;

text-indent: -40px;

overflow: hidden;

}

.pic{

filter: drop-shadow(40px 0px yellow);

}

cced6648e46cf2f81c3323e013a420d4.png

如果想换成其他颜色,直接更改第三个参数就Ok了~是不是很简单

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值