由于 HSL val 可能会在彩虹中循环,并且众所周知的色调阵列 (ROYGBIV) 中有 7 种主要颜色,因此每种颜色之间的距离(从 0 到 360)应该是 51 或 52。那么为什么这里的颜色不符合人们的期望?
HTML
<p class="red">rot</p>
<p class="orange">arnj</p>
<p class="yellow">yaller</p>
<p class="green">green</p>
<p class="blue">bloo</p>
<p class="indigo">indiglo</p>
<p class="violet">violence</p>
CSS
.red {
color: hsl(0, 100%, 50%);
}
.orange {
color: hsl(51, 100%, 50%);
}
.yellow {
color: hsl(103, 100%, 50%);
}
.green {
color: hsl(154, 100%, 50%);
}
.blue {
color: hsl(206, 100%, 50%);
}
.indigo {
color: hsl(257, 100%, 50%);
}
.violet {
color: hsl(309, 100%, 50%);
}
也许标准颜色彼此等距的假设是错误的;如果是这样(而且似乎是这样),那么真正的蓝色(以及其他人)接受的色调值是多少?
肉眼说30左右适合橙色,60左右适合黄色;其余的似乎还可以。
更新
这些值 (0,25,50,100,200,250,300) 更像是我听到这些颜色名称时的想法:
更新 2
我再次摆弄,这次使用约翰的 vals:http: //jsfiddle.net/NvTvr/7/