当前位置: 首页 > 面试题库 >

SASS计算2种颜色之间的HSL差异

庄文栋
2023-03-14
问题内容

我正在使用SASS进行某些样式设置。我有基色,并且我希望所有其他颜色都相对于基色进行更改。我已经按照需要设置了颜色,但是颜色是硬编码的,而不是根据基本颜色计算得出的。

是否有一种工具可以快速为两种颜色之间的差异生成SASS颜色功能?但是它仅允许我使用滑块生成输出颜色,而不是自己设置输出颜色并生成函数。

希望这是有道理的。


问题答案:

您可以签出以下资源:

基本上,这是它的实质:

@function color-diff($a, $b) {
  $sat: saturation($a) - saturation($b);
  $lig: lightness($a) - lightness($b);
  $fn-sat: if($sat > 0, 'desaturate', 'saturate');
  $fn-lig: if($lig > 0, 'darken', 'lighten');

  @return (
    adjust-hue: -(hue($a) - hue($b)),
    #{$fn-sat}: abs($sat),
    #{$fn-lig}: abs($lig)
  );
}

您想要使用SASS中的一个函数(或LESS中的一个参数化的mixin)来执行此操作,并且您可以看到上面一个的结构。

希望这可以帮助。



 类似资料:
  • 问题内容: 当混合蓝色和黄色油漆时,结果是某种绿色。 我有两种rgb颜色: 蓝色=(0,0,255) 黄色=(255,255,0) 找到两种颜色混合使用时产生的rgb颜色的算法是什么(就像使用油漆时会出现的一样)?该算法产生的颜色不必十分精确。对于上面的示例,它只需要看起来像某种绿色即可。 提前致谢。 编辑: 根据LaC的回答,用Go编写的此功能对我有用。 编辑#2 虽然如此,但设法将青色和黄色混

  • 问题内容: 我有一个带有StartDate列的表,我想计算两个连续记录之间的时间差。 谢谢。 @ Mark Byers和@ Yahia,我将请求表作为requestId,startdate 我想知道requestid 1和2、2和3、3和4等之间的时差是多少。我知道我需要在表上进行自我连接,但是我在子句上没有得到正确的支持。 问题答案: 要实现您的要求,请尝试以下操作(从OP编辑后进行更新): 如

  • 问题内容: 在我的代码中,日期之间的差异是错误的,因为它应该是38天而不是8天。我该如何解决? 问题答案: 问题出在变量中。月以Capital M表示。 尝试更改为: 有关更多信息,请参见此javadoc。 编辑: 这是代码,如果您想以注释的方式打印差异: 希望对您有所帮助!

  • 我正在尝试编写一个方法来打印两个ZonedDateTimes之间的时间差,关于时区之间的差异。 我找到了一些解决方案,但它们都是为使用LocalDateTime而编写的。

  • 问题内容: 我想根据百分比值计算颜色: 我该如何计算最后一件事?如果黄色出现在50%处就可以了。 我尝试了这个: 好吧,这行得通,但是我希望将50%左右的颜色在灰色背景上使用时会更浅一些。我该如何做到这一点? 谢谢! UPDATE 我试图将转换为YUV就像是在意见建议。但我仍然遇到同样的问题,即50%的天黑了。另外,在此解决方案中,我现在的白色为<5%。如果我不进行计算,只是稍微好一点,但是在<2

  • 问题内容: 我有两个字符串变量,例如StartTime和EndTime。我需要通过用StartTime减去EndTime来计算TotalTime。 StartTime和EndTime的格式如下: TotalTime(小时和分钟格式)。如何在Android中计算? 问题答案: 尝试下面的代码。 //假设时间格式为 (“ hh:mm a”) 格式 输出 -小时数:: 8