I\'m trying to loop a set amount of times gradually decreasing the lightness value of hsla but when I run the loop I get an error $lightness: \"96.77419\" is not a num
Sass gave you the answer: you're using strings when you shouldn't be (note the quotations in the error, that's a sure sign of a string). Interpolation gives you a string all the time no matter what. Because hsla()
expects all arguments to be numbers, passing it a string results in getting the string hsla()
instead of the Sass color representation for hsla()
, and the lighten()
function can only accept colors.
So just stop giving it a string:
.foo {
background: hsla(60, 1, ($base - $math), 1);
}