为什么光($ color,50%)解析为白色?

时间:2012-03-31 21:33:21

标签: css sass

这个sass片段:

$red: #f00

$lightred: lighten($red, 50%)

body
  background: $lightred

解析为:

body {
  background: white; }

如果您改为45%而不是50%,它似乎按预期工作:

$lightred2: lighten($red, 45%)
...
background-color: #ffe5e5

为什么这会变成白色而不是预期的50%的红色?

您可以在此处查看http://tinkerbin.com/OefelPoi

(注意 - 保存功能似乎有一个bug,在css区域,再次选择Sass Old Syntax,然后重新运行)

更新 -

结束我想要的是将白色与原始颜色混合以获得浅色调:

mix($color,white, 10%)

1 个答案:

答案 0 :(得分:14)

因为在HSL颜色上描述了变亮功能,而您的红色#f90被翻译为hsl(0,100%,50%)

如此变亮($ lightred,50%)等于hsl(0,0,100%)或白色