HOW - CSS 定义颜色值

目录

  • [1. 十六进制颜色 (Hexadecimal Color)](#1. 十六进制颜色 (Hexadecimal Color))
  • [2. RGB 颜色 (RGB Color)](#2. RGB 颜色 (RGB Color))
  • [3. HSL 颜色 (HSL Color)](#3. HSL 颜色 (HSL Color))
    • [HSL 颜色模式](#HSL 颜色模式)
    • 示例
  • [4. 预定义颜色名 (Named Colors)](#4. 预定义颜色名 (Named Colors))
  • [5. LCH 颜色 (LCH Color)](#5. LCH 颜色 (LCH Color))
  • [6. Lab 颜色 (Lab Color)](#6. Lab 颜色 (Lab Color))
  • [7. HWB 颜色 (HWB Color)](#7. HWB 颜色 (HWB Color))
  • [8. CSS 颜色函数 (Color Function)](#8. CSS 颜色函数 (Color Function))
  • [9. CSS4 颜色模块中的其他函数](#9. CSS4 颜色模块中的其他函数)
  • 示例总结

CSS 支持多种方式定义颜色值。以下是常用的几种颜色定义方式:

1. 十六进制颜色 (Hexadecimal Color)

使用十六进制表示红、绿、蓝三原色。

  • 简写形式(如果每个颜色分量是两个相同的字符):

    css 复制代码
    color: #f00; /* 红色 */
  • 完整形式:

    css 复制代码
    color: #ff0000; /* 红色 */

2. RGB 颜色 (RGB Color)

使用 rgb() 函数,定义红、绿、蓝三个分量的颜色,范围从 0 到 255。

  • 不透明的 RGB:

    css 复制代码
    color: rgb(255, 0, 0); /* 红色 */
  • 透明的 RGBA:

    css 复制代码
    color: rgba(255, 0, 0, 0.5); /* 50% 透明的红色 */

3. HSL 颜色 (HSL Color)

使用 hsl() 函数,定义色调、饱和度和亮度。

  • 不透明的 HSL:

    css 复制代码
    color: hsl(0, 100%, 50%); /* 红色 */
  • 透明的 HSLA:

    css 复制代码
    color: hsla(0, 100%, 50%, 0.5); /* 50% 透明的红色 */

hsl 是一种颜色表示方式,表示色调 (Hue)、饱和度 (Saturation) 和亮度 (Lightness)。与传统的 RGB 颜色表示方式不同,HSL 更接近人类对颜色的感知方式。

HSL 颜色模式

HSL 是一种基于色相、饱和度和亮度来表示颜色的模式:

  • Hue (色调): 色调是指颜色的种类,表示为 0 到 360 之间的角度值。例如:

    • 0° 是红色
    • 120° 是绿色
    • 240° 是蓝色
  • Saturation (饱和度): 饱和度表示颜色的鲜艳程度,范围从 0% 到 100%。0% 是灰色,100% 是全色。

  • Lightness (亮度): 亮度表示颜色的明暗程度,范围从 0% 到 100%。0% 是黑色,100% 是白色。

示例

例如,HSL 值为 hsl(240, 100%, 50%) 表示的是一个纯蓝色,色调为 240°,饱和度为 100%,亮度为 50%。

4. 预定义颜色名 (Named Colors)

使用 CSS 提供的预定义颜色名。

  • 示例:

    css 复制代码
    color: red; /* 红色 */
    color: blue; /* 蓝色 */
    color: lightgray; /* 浅灰色 */

5. LCH 颜色 (LCH Color)

使用 lch() 函数,定义亮度(Lightness)、色度(Chroma)和色调(Hue)。

  • 示例:

    css 复制代码
    color: lch(50% 100 0); /* 大致为红色 */

6. Lab 颜色 (Lab Color)

使用 lab() 函数,定义亮度(Lightness)、a(从绿色到红色轴)和 b(从蓝色到黄色轴)。

  • 示例:

    css 复制代码
    color: lab(50% 50 0); /* 大致为蓝色 */

7. HWB 颜色 (HWB Color)

使用 hwb() 函数,定义色调(Hue)、白色量(Whiteness)和黑色量(Blackness)。

  • 示例:

    css 复制代码
    color: hwb(0 0% 0%); /* 红色 */
    color: hwb(240 0% 0%); /* 蓝色 */

8. CSS 颜色函数 (Color Function)

使用 color() 函数可以定义多种颜色空间的颜色,通常用于更高级的颜色操作和定义。

  • 示例:

    css 复制代码
    color: color(display-p3 1 0 0); /* 使用 Display-P3 色彩空间 */

9. CSS4 颜色模块中的其他函数

CSS4 颜色模块引入了更多颜色定义方法,如 oklch()oklab(),这些方法正在得到越来越多的支持。

  • 示例:

    css 复制代码
    color: oklch(0.5 0.2 0.2); /* 使用 OKLCH 颜色空间 */

示例总结

综合利用这些颜色定义方式,可以根据项目需求选择最合适的颜色表示方法。例如:

css 复制代码
/* 十六进制颜色 */
color: #3498db;

/* RGB 颜色 */
color: rgb(52, 152, 219);

/* HSL 颜色 */
color: hsl(204, 70%, 53%);

/* 预定义颜色名 */
color: steelblue;

/* 透明的 RGBA 颜色 */
color: rgba(52, 152, 219, 0.5);

/* LCH 颜色 */
color: lch(67.5345% 0.2372 264.6053);

/* Lab 颜色 */
color: lab(67.5345% -24.2038 -44.5822);

/* HWB 颜色 */
color: hwb(204 0% 0%);

/* CSS4 颜色模块 */
color: color(display-p3 0.2 0.6 0.8);

每种方法都有其优势和适用场景,可以根据具体需求选择合适的方法来定义颜色。

相关推荐
2501_915373881 小时前
electron+vite+vue3 快速入门教程
前端·javascript·electron
zhl9999999991 小时前
xe-upload上传文件插件
前端·上传文件·xe-upload·兼容app上传文件
宁酱醇3 小时前
CSS基础_@拉钩教育【笔记】
前端·css
建群新人小猿3 小时前
CRMEB-PRO系统定时任务扩展开发指南
android·java·开发语言·前端
牧天白衣.3 小时前
vue 和 html 的区别
前端
知识分享小能手3 小时前
JavaScript学习教程,从入门到精通,Ajax数据交换格式与跨域处理(26)
xml·开发语言·前端·javascript·学习·ajax·css3
好名字08213 小时前
el-tabs与table样式冲突导致高度失效问题解决(vue2+elementui)
前端·vue.js·elementui
qq_278063713 小时前
vue elementui 去掉默认填充 密码input导致的默认填充
前端·vue.js·elementui
黄同学real3 小时前
HTML5 新增的主要标签整理
前端·html·html5
liwulin05063 小时前
【JAVAFX】实现屏幕指定区域截图,带尺寸显示
服务器·前端·python