我前段时间写了个获取柔和背景色的函数, 就是在 hsl 颜色空间中, 把饱和度和亮度拉低, 就能得到比较柔和的背景色了。
// 这儿的 20 / 40 / 35 / 65 都是经验值(随便定的...)
const h = randomInt(0, 360) // 0 - 360
const s = randomInt(20, 40) // 0 - 100
const l = randomInt(35, 65) // 0 - 100
const colorStr = `hsl(${h}deg,${s}%,${l}%)`
但是这时候就有一个问题了, 在该颜色作为背景色时, 前景色应当如何取值, 才能获取最佳的视觉效果呢?
我发现当 hue 值越接近 0 / 120 / 240 / 360 时, 人们(我)会感觉这个颜色较"深"; 而当 hue 值越接近 60 / 180 / 300 时, 人们(我)会感觉这个颜色较"浅";
不知道我的个人感觉是否准确?是否有这方面的理论 /文章?