失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > css filter改变图片的颜色 神奇的操作~

css filter改变图片的颜色 神奇的操作~

时间:2018-09-24 20:20:02

相关推荐

css filter改变图片的颜色 神奇的操作~

最近get了一个神奇的知识~

视觉设计的小姐姐某天有一个想法,她只设计一版图标,需要前端在不同的场景展示不同颜色的图标,确实是高效的办法哈!但是对我的CSS知识来说超纲了[捂脸]…于是开始搜搜搜,发现了一些办法,而且这些办法都是使用filter这个神奇的属性!

一、filter:drop-shadow

drop-shadow滤镜可以给元素或图片非透明区域添加投影,对于背景透明的icon来说,投影当然就可以实现改颜色啦!

html:

<div class="imgBox"><img src="xxxx" alt="" /></div>

css:

.imgBox {width: 32px;height: 32px;overflow: hidden;img {width: 32px;height: 32px;transform: translateY(-32px);filter: drop-shadow(#EFE2DA0 0 32px);}}

代码很简单:

1.filter: drop-shadow(投影颜色,x偏移量,y偏移量);

这是filter: drop-shadow(#FF00000 32px)的效果,上面是原图,下面是投影

2.需要注意的就是需要设置容器overflow: hidden和元素本身transform: translateY(-64px),只展示投影;

二、filter其他的属性

解决方案:https://css-/the-many-ways-to-change-an-svg-fill-on-hover-and-when-to-use-them/

这篇帖子里的最后一种方法对于想要实现图片变成指定颜色是比较适用的:

但是这个写法确实是不太容易理解原理,哈哈。不过文章中给出了工具可以计算出颜色代码对应的矩阵,还是很好用的!不过这个办法有一个限制,就是原图片必须是白色或者黑色的,工具计算出来的矩阵才能实现预期的颜色。

如果觉得《css filter改变图片的颜色 神奇的操作~》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。