CSS的颜色
CSS中关于颜色的常见属性有俩,color和background-color。分别表示颜色跟背景颜色。重点就研究了一下颜色值。
RGB颜色
计算机中最常见的就是RGB颜色,符合光谱三原色的原理:红、蓝、绿三种颜色的光可以构成所有颜色,红蓝绿是人与之对应敏感的视觉神经。目前一个颜色对应三个字节,用三个0-255来表示。其中,#FFFFFF是白色,即红、绿、蓝三种颜色混合的颜色。#000000是黑色。

CMYK颜色
在中学以前,在美术课上接触的三原色貌似是红黄蓝。这就涉及到颜料的颜色是它吸收了其他光以后所反射剩余的光。所以红黄蓝就是红蓝绿的补色: 品红,黄、青色。简称红黄蓝(也称为三间色)。

HSL颜色
HSL即色相、饱和度、亮度(Hue, Saturation, Lightness)。 色相(H)是色彩的基本属性,就是平常所说的颜色名称,如红色、黄色等。 饱和度(S)是指色彩的纯度,越高色彩越纯,低则逐渐变灰,取0-100%的数值。 明度(V),亮度(L),取0-100%。

其他的颜色表示法
RGBA 是代表 Red(红色)、Green(绿色)、Blue(蓝色)和 Alpha 的色彩空间。RGBA 颜色被用来表示带透明度的颜色,实际上,Alpha 通道类似一种颜色值的保留字。在 CSS 中,Alpha 通道被用于透明度,所以我们的颜色表示被称作 RGBA,而不是 RGBO(Opacity)。
为了方便使用,CSS 还规定了名称型的颜色,它内置了大量(147种,17种标准色和130种其他颜色)的颜色名称。想要具体看的,可以查看 W3School
渐变
在 CSS 中,background-image这样的属性,可以设为渐变。提及渐变是因为颜色在渐变中,会有非常有趣的效果。CSS 中支持两种渐变,一种是线性渐变,一种是放射性渐变。
线性渐变
线性渐变的代码:
linear-gradient(direction, color-stop1, color-stop2, ...);
这里的 direction 可以是方向,也可以是具体的角度。例如:
- to bottom
- to top
- to left
- to right
- to bottom left
- to bottom right
- to top left
- to top right
- 120deg
- 3.14rad
color-stop 是一个颜色和一个区段。例如:
- rgba(255,0,0,0)
- orange
- yellow 10%
- green 20%
- lime 28px
反射性渐变
放射性渐变代码:
radial-gradient(shape size at position, start-color, ..., last-color);
放射性渐变需要一个中心点和若干个颜色。