mcpField
A
accessible-contrast

accessible-contrast

github.com/basiclines设计与 UI1652 次安装32 周前更新
代码仓库

关于 accessible-contrast

accessible-contrast 是面向设计师和开发者的配色技能,用于生成易读的界面颜色。它以 11 级色阶和对称索引配对,辅助选择符合 WCAG 对比度要求的组合。

主要功能

  1. 01生成 11 级色阶
  2. 02按对称索引配对
  3. 03提供 WCAG AA 与 AAA 指引
  4. 04输出带名称的 CSS 变量

适用场景

  1. 01生成易读的文字与背景配色
  2. 02为品牌色创建一致色阶
  3. 03为按钮和大号文字选择对比组合

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/basiclines/rampa-studio --skill accessible-contrast

安装后在 Claude Code 中输入/accessible-contrast确认已加载。

详细介绍

无障碍对比度配色组合

生成专为无障碍文本/背景搭配设计的色阶。使用 11 级比例,实现可预测且符合 WCAG 标准的搭配。

适用场景

  • “创建无障碍配色组合”
  • “我需要符合 WCAG 标准的颜色”
  • “生成高对比度配色组合”
  • “确保我的文本清晰易读”

安装

npx @basiclines/rampa

11 级策略

为什么是 11 级?这样可以实现可预测的配对计算:

配对索引对比度级别
最大0 + 10最高(近白色 + 近黑色)
AAA 普通文本1 + 9、2 + 8对比度 7:1+
AA 普通文本3 + 7对比度 4.5:1+
AA 大号文本4 + 6对比度 3:1+

配方

rampa -C "<brand-color>" -L 98:5 --size=11 -O css --name=color
  • -L 98:5 确保范围从近白色延伸到近黑色
  • --size=11 创建索引 0-10,便于配对
  • 配对是对称的:0+10、1+9、2+8 等

完整示例

品牌颜色为 #3b82f6:

rampa -C "#3b82f6" -L 98:5 --size=11 -O css --name=blue

输出:

:root {
  --blue-0: #f8fafc;   /* Near white */
  --blue-1: #f1f5f9;
  --blue-2: #e2e8f0;
  --blue-3: #cbd5e1;
  --blue-4: #94a3b8;
  --blue-5: #64748b;   /* Middle gray */
  --blue-6: #475569;
  --blue-7: #334155;
  --blue-8: #1e293b;
  --blue-9: #0f172a;
  --blue-10: #020617;  /* Near black */
}

对比度配对指南

普通文本(最低 4.5:1 - WCAG AA)
/* Light backgrounds with dark text */
.light-subtle {
  background: var(--blue-0);
  color: var(--blue-7);  /* 0+7 = AA */
}

.light-default {
  background: var(--blue-1);
  color: var(--blue-8);  /* 1+8 = AA */
}

.light-strong {
  background: var(--blue-2);
  color: var(--blue-9);  /* 2+9 = AAA */
}

/* Dark backgrounds with light text */
.dark-subtle {
  background: var(--blue-10);
  color: var(--blue-3);  /* 10+3 = AA */
}

.dark-default {
  background: var(--blue-9);
  color: var(--blue-2);  /* 9+2 = AA */
}

.dark-strong {
  background: var(--blue-8);
  color: var(--blue-1);  /* 8+1 = AAA */
}
大号文本(最低 3:1 - WCAG AA)
.large-text {
  background: var(--blue-3);
  color: var(--blue-7);  /* 3+7 = AA Large */
}
最大对比度
.max-contrast {
  background: var(--blue-0);
  color: var(--blue-10);  /* 0+10 = Maximum */
}

快速参考表

背景AA 文本AAA 文本
07、8、9、108、9、10
17、8、9、108、9、10
28、9、109、10
38、9、109、10
70、1、2、30、1、2
80、1、2、30、1、2
90、1、20、1
100、1、20、1

多种颜色

为多种品牌颜色生成无障碍色阶:

rampa -C "#3b82f6" -L 98:5 --size=11 -O css --name=blue
rampa -C "#22c55e" -L 98:5 --size=11 -O css --name=green
rampa -C "#ef4444" -L 98:5 --size=11 -O css --name=red

所有色阶都使用相同的索引配对逻辑。

提示

  1. -L 98:5 范围至关重要,可确保完整的对比度范围
  2. 中间值(4、5、6)适用于禁用/弱化状态
  3. 始终测试实际渲染后的对比度;Stark、axe 等工具可以进行验证
  4. 索引计算(0+10、1+9、2+8)让主题配置更可预测
  5. 对于按钮:使用索引 5-6 作为背景,0-1 作为文本

评论

支持 Markdown