LESS 中有一个函数可以计算两种颜色的平均值。例如,
average(#ff6600, #666666);
输出#b36633
。
但是这个函数占用了 color1
和 color2
的相等部分。有没有办法说,将 color1
的 X% 和 color2
的 (1-X)% 取平均值?
当然,不存在这样的功能。但也许通过其他一些函数的帮助,我们可以实现加权平均?
编辑:我认为使用 mix()
可能会解决这个问题,因为您可以指定百分比比例:
mix(#ff6600, #666666, 70%)
但是,我不确定对于任何
, mix(color1, color2, 50%)
是否会达到与 average(color1, color2)
相同的效果>color1color2
.
最佳答案
mix(#ff6600, #666666, 70%)
最后一个参数 0% 将产生我们声明的第一种颜色(在本例中为 ff6600)
而100% 将执行 666666。
因此在您的情况下 mix(color1, color2, 70%)
输出是 color2 的 70% 加上 color1 的 30%。
如果您将参数留空,则默认值为 50%!
关于css - LESS 两种颜色的加权平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23440358/