网页颜色

网页颜色表
网页颜色是在万维网上显示网页时使用的颜色，可以用三种方法表示：RGB、十六进制格式或者在一些情况下根据其常见的英文名称。十六进制的颜色通常是以井号（#）开头的。颜色是根据其红色、绿色和蓝色成分的强度指定的，每一成分呈现为八个比特。这样，在sRGB色域内，指定一个网页颜色共有24比特，共有16777216种颜色可以表示。一些网页颜色可能还有透明度，默认情况下颜色是完全不透明的，即不透明度为1。
在CSS中，不在sRGB色域内的颜色也可以表示，其红色、绿色和蓝色成分可能是负数或者超过100%，这样的颜色空间在理论上是没有边界的。指定非RGB的颜色需要在CSS中调用rgb()函数，无法使用十六进制语法表示。
网页颜色有明确的色度定义，sRGB，选择这个是因为它与现实的计算机显示器和视觉条件相似，以尽可能渲染出与指定值相似的颜色而不需要进行特定的颜色管理，但一些高级的用户代理会需要颜色管理以提供更广的色域。

**十六进制数字表示法**
RGB颜色可以使用以井号开头的六位（或八位）十六进制数字（0-F）表示，相当于三个或者四个字节，每个字节相当于十进制数的0至255。三个字节分别表示红色、绿色和蓝色，第四个字节是可选的，表示Alpha通道。
例如，白色的十六进制表示方法是#ffffff，表示其红、绿、蓝三种成分的值均为最大值255，相当于rgb(255 255 255)。又如，一种颜色在十进位中红、绿、蓝的成分分别是36、104、160（#2468A0），在十六进制中则相当于24、68、A0因此这个颜色的表示方法为#2468A0。
部分六位或八位的十六进制颜色可以简写为三位或者四位，部分软件可能并不支持简写形式的颜色。例如，#09c相当于简化的#0099cc，#09c8相当于简化的#0099cc88。简写的颜色形式可以表示4096种颜色（不考虑alpha通道）。

**CSS函数表示法**
在CSS中，颜色可以使用函数来表示。在CSS颜色模型3中，函数有两种表示方法：rgb()和hsl，这两个函数也可以写为rgba()和hsla()。
rgb颜色是由红（red）、绿（green）、蓝（blue）三个成分以及一个可选的alpha通道指定的，其语法为：- rgb(red green blue)或rgb(red, green, blue)（没有alpha通道）- rgb(red green blue / alpha)或rgb(red, green, blue, alpha)（有alpha通道）
例如，rgb(255 0 0)和rgb(100% 0% 0%)可以表示红色（rgb(255 0 0)），而rgb(255 0 0 / 50%)和rgb(100% 0% 0% / 50%)则表示半透明的红色（rgb(100% 0% 0% / 50%)）。
hsl颜色是由色相（hue）、饱和度（saturation）和明度（lightness）表示的，其语法为：- hsl(hue saturation lightness)或hsl(hue, saturation, lightness)（没有alpha通道）- hsl(hue saturation lightness / alpha)或hsl(hue, saturation, lightness, alpha)（有alpha通道）
例如，hsl(120 100% 50%)表示绿色（hsl(120 100% 50%)），hsl(120 100% 50% / 60%)则表示不透明度仅为40%的绿色（hsl(120 100% 50% / 40%)）。
CSS颜色模型4中还引入了一些依赖于设备的函数：- lab(lightness a b)：在直角坐标模式下的CIELAB色彩空间中的颜色- lch(lightness chromaticity hue)：在极坐标模式下的CIELAB色彩空间中的颜色- oklab(lightness a b)和lch(lightness chromaticity hue)：在CIELAB颜色基础上进行了改进的颜色表示，以更好地拟合视觉效果- xyz()- color()：自定义色彩空间函数
上述函数表示方式均允许添加/ alpha以指定alpha值。

**颜色名称**
SVG的X11颜色
颜色名称是指通过颜色的英文名称定义的颜色。在W3C标准中，颜色名称分为基本颜色和扩展颜色。除了transparent之外，所有的颜色都是完全不透明的。
在后来的CSS版本中，加入了橙色和透明色。
除此之外，CSS3（CSS颜色模块版本3）接纳绝大部分X11颜色（或称SVG色）。

**扩展颜色**
SVG1.1命名的颜色以及其sRGB十六进制和HSL代码
HTML 4.01、CSS 2.0、SVG 1.0和CSS 3加入了扩展颜色，有些颜色是由网页浏览器定义的。部分浏览器可能不支持所有的颜色颜色，但是在2005年，大多数浏览器已完成全面支持。其中这些颜色很多都是来自X11_color_names。
下面的表格列举出了CSS3规范中的所有X11颜色，以及其对应的十六进制值。这个列表中包含了一些常见的同义词，如aqua和cyan（均表示青色）、fuchsia和magenta（均表示品红色）、gray和grey（均表示灰色）。

**RGB颜色列表**

**网页安全颜色**
在20世纪90年代中期，很多显示器只支持显示256种颜色，这些颜色由硬件决定或者可以被“颜色表”改变。如果颜色不可用，就必须使用不同的颜色，通常就是最近的颜色或者抖动。在诸如X11的系统上，颜色图是在不同之间共享的，浏览器会分配一些小的颜色块。在2000年左右，由于24位颜色的普及，256色的显示锐减，“网页安全颜色”的实际使用减少。
“网页安全”颜色并非全都拥有标准的名称，但是每个颜色都可以以RGB十六进制的形式显示，每个分量（红、绿、蓝）都会接收以下表中的6个值之一：
下面这个表显示了所有的网页安全颜色。

**颜色表**

**网页最安全颜色**
设计者会被鼓励在网页中使用这216个网页最安全的颜色，216色颜色表开发时还有许多的8位颜色，只有22种颜色会被可靠地显示而不需要重新映射。这22个颜色被称为“真正安全的颜色”，包含一系列亮度的绿色、黄色和青色

**无障碍**

**颜色选择**
一些网页浏览器和设备不支持颜色，对于这些显示，以及对于失明或者色盲的用于，依赖于颜色的网页内容会难以显示或者无法显示。
颜色一般不应该被指定（而应该调用浏览器的默认颜色），或者背景和前景应该同时指定，例如纯文本颜色、未访问链接的颜色、已访问链接的颜色等。这样是为了避免在特定的背景上显示与背景颜色非常相似颜色的文本。

**颜色对比度**
网页内容无障碍指南要求文本的背景色与前景色具有一定的对比度，常规的文本对比度不小于4.5:1，大文本的对比度不小于3:1。增强的无障碍需要对比度要超过7:1。但是，解决无障碍问题并非像增加对比度那样简单。根据网页无障碍倡议的报告，失读症的读者最适合阅读在最大值之下的对比度的文本。

**参考文献**

**参见**
 颜色列表- 原色- 色彩学- 色彩空间
** Adobe RGB色彩空间
** CIE 1931色彩空间
** CIE L*a*b*色彩空间
** RGB色彩空间- 孟塞尔颜色系统- scRGB- 宽色域RGB色彩空间- 绘儿乐蜡笔颜色列表

**外部链接**
  MDN上的CSS颜色参考  date=20170705124141 -  MDN上的CSS颜色参考 date=20230914033607  -  kuler date=20190324083929 -  网页颜色参考-  网页安全调色板的末日, David Lehn和Hadley Stern写的一篇论文-  安全颜色的一种排列-  前景颜色表 date=20050829161053 -  X11颜色表-  HTML颜色-  十六进位制介绍-  各种模式颜色-  HTML Color Spectrum Chart-  HTML颜色 date=20210128090822 -  HTML颜色代码 date=20210119065209 -  ws Color Scheme Generator 2 date=20210422001900 -  ColorBlender.com | Your free online color matching toolbox
eu:Wikipedia:Kolorea