color-string

中文文档
2.1.4发布于 2025/11/16MITTypeScriptES Module近 30 天下载 2.5亿

Parser and generator for CSS color strings

原始使用文档
文档目录5 节
  1. Install
  2. Usage
  3. Parsing
  4. Generation
  5. License

color-string

library for parsing and generating CSS color strings.

Install

npm install color-string

Usage

Parsing

colorString.get('#FFF')                          // {model: 'rgb', value: [255, 255, 255, 1]}
colorString.get('#FFFA')                         // {model: 'rgb', value: [255, 255, 255, 0.67]}
colorString.get('#FFFFFFAA')                     // {model: 'rgb', value: [255, 255, 255, 0.67]}
colorString.get('hsl(360, 100%, 50%)')           // {model: 'hsl', value: [0, 100, 50, 1]}
colorString.get('hsl(360 100% 50%)')             // {model: 'hsl', value: [0, 100, 50, 1]}
colorString.get('hwb(60, 3%, 60%)')              // {model: 'hwb', value: [60, 3, 60, 1]}

colorString.get.rgb('#FFF')                      // [255, 255, 255, 1]
colorString.get.rgb('blue')                      // [0, 0, 255, 1]
colorString.get.rgb('rgba(200, 60, 60, 0.3)')    // [200, 60, 60, 0.3]
colorString.get.rgb('rgba(200 60 60 / 0.3)')     // [200, 60, 60, 0.3]
colorString.get.rgb('rgba(200 60 60 / 30%)')     // [200, 60, 60, 0.3]
colorString.get.rgb('rgb(200, 200, 200)')        // [200, 200, 200, 1]
colorString.get.rgb('rgb(200 200 200)')          // [200, 200, 200, 1]

colorString.get.hsl('hsl(360, 100%, 50%)')       // [0, 100, 50, 1]
colorString.get.hsl('hsl(360 100% 50%)')         // [0, 100, 50, 1]
colorString.get.hsl('hsla(360, 60%, 50%, 0.4)')  // [0, 60, 50, 0.4]
colorString.get.hsl('hsl(360 60% 50% / 0.4)')    // [0, 60, 50, 0.4]

colorString.get.hwb('hwb(60 3% 60%)')            // [60, 3, 60, 1]
colorString.get.hwb('hwb(60, 3%, 60%)')          // [60, 3, 60, 1]
colorString.get.hwb('hwb(60, 3%, 60%, 0.6)')     // [60, 3, 60, 0.6]

colorString.get.rgb('invalid color string')      // null

Generation

colorString.to.hex(255, 255, 255)     // "#FFFFFF"
colorString.to.hex(0, 0, 255, 0.4)    // "#0000FF66"
colorString.to.hex(0, 0, 255, 0.4)    // "#0000FF66"
colorString.to.rgb(255, 255, 255)     // "rgb(255, 255, 255)"
colorString.to.rgb(0, 0, 255, 0.4)    // "rgba(0, 0, 255, 0.4)"
colorString.to.rgb(0, 0, 255, 0.4)    // "rgba(0, 0, 255, 0.4)"
colorString.to.rgb.percent(0, 0, 255) // "rgb(0%, 0%, 100%)"
colorString.to.keyword(255, 255, 0)   // "yellow"
colorString.to.hsl(360, 100, 100)     // "hsl(360, 100%, 100%)"
colorString.to.hwb(50, 3, 15)         // "hwb(50, 3%, 15%)"

License

MIT

版本与发布记录

color-string 共发布 43 个版本,首次发布于 2011/06/20;过去 12 个月发布了 2 个版本。

版本发布日期距今
2.1.4latest2025/11/1611 个月前
2.1.32025/11/1511 个月前
2.1.22025/09/141.1 年前
2.1.12025/09/081.2 年前
2.1.02025/08/301.2 年前
2.0.12025/02/141.7 年前

关于 color-string 的常见问题

color-string 是什么?

Parser and generator for CSS color strings

如何安装 color-string?

在项目目录运行 npm install color-string,或使用 pnpm add / yarn add / bun add。

color-string 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

color-string 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

color-string 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=18。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

color-string 可以商用吗?

color-string 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

color-string 的下载量有多少?

根据 npm 官方下载统计,color-string 在 2026/10/07 – 2026/11/05 这 30 天内被下载 251,957,323 次,日均约 8,398,577 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

color-string 还在维护吗?

最新版本 2.1.4 发布于 2025/11/16(11 个月前);至今共发布 43 个版本,其中过去 12 个月发布了 2 个;首次发布于 2011/06/20。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。