给定一个透明的 PNG 显示一个简单的白色形状,是否可以通过 CSS 以某种方式改变它的颜色?某种覆盖或什么不是?
原文由 user429620 发布,翻译遵循 CC BY-SA 4.0 许可协议
给定一个透明的 PNG 显示一个简单的白色形状,是否可以通过 CSS 以某种方式改变它的颜色?某种覆盖或什么不是?
原文由 user429620 发布,翻译遵循 CC BY-SA 4.0 许可协议
我发现了这个很棒的 codepen 示例,您可以插入 十六进制颜色 值,它会返回将此颜色应用于 png 所需的过滤器
例如,我需要我的 png 具有以下颜色 #1a9790
那么你必须对你的png应用以下过滤器
filter: invert(48%) sepia(13%) saturate(3207%) hue-rotate(130deg) brightness(95%) contrast(80%);
PS:codepen 是基于 MultiplyByZer0 的精彩回答: How to transform black into any given color using only CSS filters
所有功劳都归于他:clap:
原文由 Fadi Abo Msalam 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答875 阅读✓ 已解决
4 回答986 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
2 回答846 阅读✓ 已解决
2 回答1k 阅读✓ 已解决
2 回答2.6k 阅读
您可以将过滤器与
-webkit-filter
和filter
一起使用:过滤器对于浏览器来说相对较新,但根据以下 CanIUse 表,超过 90% 的浏览器都支持过滤器: https ://caniuse.com/ #feat=css-过滤器您可以将图像更改为灰度、棕褐色等(查看示例)。
因此,您现在可以使用滤镜更改 PNG 文件的颜色。
资源