# Checkbox 更新日志 先阅读 [完整 LICENSE](https://snowui.dev/LICENSE);同任务、同版本、同范围去重。 ### v1.3.0 (2026-10-23) - 标签采用共享单行预设并保留原始 Snippet;窄宽时允许标签收缩,复杂多行内容可显式退出。控件与标签间距消费共享解析,零值与字体/gap 缩放不低于 4 CSS px;较大首选值、视觉体尺寸和透明留白比例保持。 - 分组同步仅在成员实际变化时更新数组,修复空数组在初始化时重复写入引发的 effect 更新循环;半选清除和单次回调保持。 - 2026-09-21:统一使用文档、源码属性表与 Site / AI 阅读入口;仅文档修订,不改变组件行为。 - **Checkbox-Docs.2026-05-25** 源码顶部历史更新日志已归档;后续新增变更统一写入本文档 更新日志,源码顶部只保留职责、当前关键架构与文档路径。 ### v1.2.28 (2026-08-20) - **CB-Corner.1** Checkbox 外壳继续复用与 Button 相同的 `.snowui-rounded-rectangle` / `superellipse(1.1)` iOS 连续圆角;内部 Hover 覆盖层显式继承 `border-radius` 与 `corner-shape`,确保基础边框、选中背景和 Hover 表面始终共享同一轮廓。 ### v1.2.27 (2026-08-20) - **CB-Hover.4** 按用户裁决将未选中边框 Hover 覆盖层从 `4%` 提升为 `20%` 黑色;基础边框仍为 `20%` 黑色,默认叠加结果等效约 `36%` 黑色,填充保持不变。该值与独立覆盖层实现已登记为 `StyleSpec §2.4.3` 限定例外。 ### v1.2.26 (2026-08-20) - **CB-Hover.3** Hover 改为独立覆盖层淡入,不再直接插值半透明 inset `box-shadow`。未选中态只叠加 `4%` 主色边框层;选中态用 `20%` Static White 覆盖完整表面,消除边框先变透明再恢复的闪烁。 ### v1.2.25 (2026-08-20) - **CB-Hover.2** 未选中 Hover 保持填充背景不变,仅把基础 `20%` 黑色边框作为底色叠加 `4%` 主色,使边框按 Hover 规则加深;选中态继续保持填充与边框同色。 ### v1.2.24 (2026-08-20) - **CB-Hover.1** Hover 色同时覆盖视觉体填充与 inset 边框:未选中态两者统一为 `4%` 主色混合值,checked / indeterminate 两者统一为主色叠加 `20%` Static White,避免边框与填充分层。 ### v1.2.23 (2026-08-20) - **CB-Motion.4** 勾选与横线描边在整个退场周期固定使用 Static White,避免取消选择后因继承色立即恢复为黑色而产生残影。 - **CB-Test.1** Test 基础示例补充 indeterminate 横线状态。 ### v1.2.22 (2026-08-20) - **CB-Visual.2** checked / indeterminate 图形改为 Workshop `14763:16992` 的 28×28 基准比例:勾选路径使用设计稿精确坐标,横线宽度为外框的 `12/28`,两者随 visual 整体等比缩放。 - **CB-Motion.3** 取消选择时不反向播放勾选绘制;勾选以常规状态时序随选中底色淡出,完全不可见后再无动画复位路径。 ### v1.2.21 (2026-08-20) - **CB-Size.1** 明确 `size` 是包含 inset 边框的视觉体外部尺寸,并用 `border-box` 固化该边界。 - **CB-Motion.2** 常规状态过渡统一为 `150ms ease-out`;checked 勾选作为独立路径绘制,放慢为进入 `200ms ease-out`、退出 `120ms ease-in`。 ### v1.2.20 (2026-08-20) - **CB-Visual.1** checked / indeterminate 图形改为 Workshop `14756:16934` 的 32×32、2px 圆头描边路径,并随组件尺寸整体缩放。 - **CB-Motion.1** checked 勾选改为路径绘制;减少动效时直接提交最终路径。选中态背景、边框和颜色保持不变。 - **CB-Scale.1** 未选中边框以 32px 时 2px 为基准,按 `size × 0.0625` 等比缩放;公开 border-width override 仍优先。 ### v1.2.19 (2026-06-23) - 新增 `onCheckedChange` 与无可见 label 场景的 `ariaLabel`,供 Table 内置选择列复用。 ### v1.2.18 (2026-04-28) #### 调整 - **CB-Layout.1** 按 `LayoutProtocol.md` 将组件注册为内联外壳布局,补充 visual + label 的布局边界说明,并显式定义 `--snowui-checkbox-gap` 默认值。 ### v1.2.17 (2026-04-02) #### 调整 - **CB-Bridge.3** 新增 label gap、字体与行高的组件级变量桥接,允许组合宿主统一覆盖 checkbox 的 icon-text 间距和标签样式。 ### v1.2.16 (2026-03-06) #### 调整 - **CB-Bridge.2** 勾选 / 半选图标的显隐过渡改为消费 Frame `control` 通用时序桥接变量,组件不再维护独立默认 duration / easing。 ### v1.2.15 (2026-02-18) #### 修复 - **CB-Fix.13** 按历史稳定策略修复 hover 闪动:移除 visual 的颜色/边框过渡,unchecked hover 不再改变边框。 ### v1.2.14 (2026-02-18) #### 修复 - **CB-Fix.12** 进一步修复 hover 闪动:移除 visual 的 `background-image` 叠加链路,改为直接 `background-color` 混色。 ### v1.2.13 (2026-02-18) #### 修复 - **CB-Fix.11** 修复 hover 闪动:状态与 hover 选择器从 `:has(...)` 切换为 sibling 链路(`input + visual`)。 ### v1.2.12 (2026-02-18) #### 调整 - **CB-Adj.5** 与 Radio/Switch 统一动效时间与缓动曲线(`0.2s` + `cubic-bezier(0.4, 0, 0.2, 1)`),同步到 visual/icon 过渡。 ### v1.2.11 (2026-02-18) #### 调整 - **CB-Adj.4** 激活态 hover 叠加改为跟随 icon 白色 token(`--static-white-100`),与“叠加色=图标/文字色”一致。 ### v1.2.10 (2026-02-18) #### 调整 - **CB-Adj.3** 激活态勾选图标白色 token 改为 `--static-white-100`(包含 icon color 与 path fill)。 ### v1.2.9 (2026-02-18) #### 调整 - **CB-Adj.1** 默认颜色链路改为主色:未设置颜色类时,激活态背景使用 `--primary`(行为对齐 Filled Button)。 - **CB-Adj.2** 激活态勾选图标固定白色(显式 path fill)。 ### v1.2.8 (2026-02-18) #### 修复 - **CB-Fix.10** 修复激活态 hover 不生效:checked/indeterminate hover 直接使用 `white 20% + primary` 混合背景色,保证可见变化。 ### v1.2.7 (2026-02-18) #### 修复 - **CB-Fix.8** 修复激活态图标颜色:选中/半选图标显式改为 `--white-100`。 - **CB-Fix.9** 修复激活态无 hover:checked/indeterminate 状态的 hover 叠加改为白色链路,提升可见性。 ### v1.2.6 (2026-02-18) #### 修复 - **CB-Fix.6** 进一步修复 hover 闪动:移除视觉层颜色过渡,避免颜色链插值抖动。 - **CB-Fix.7** 解耦图标颜色与主色链,激活态图标固定使用 `--white-100`,避免主色链被 `currentColor` 反向污染。 ### v1.2.5 (2026-02-18) #### 修复 - **CB-Fix.4** 修复 hover 进出时的消失闪动:overlay 改为固定 gradient,通过变量切换透明度,避免 hover 时切换 `background-image`。 - **CB-Fix.5** 恢复激活态对比:选中/半选图标颜色回到 `--white-100`。 ### v1.2.4 (2026-02-18) #### 修复 - **CB-Fix.3** 修复 hover 闪动:视觉层改为常驻 0% overlay 基线,hover 仅切换 overlay 强度;并收敛过渡属性避免重绘抖动。 ### v1.2.3 (2026-02-18) #### 调整 - **CB-Color.1** 组件颜色统一改为 `currentColor` 链路,支持 `class="text-*"` 覆盖整组件。 - **CB-Color.2** 原灰阶层改为同色透明度层(20%/40%),激活与未激活统一同色体系。 ### v1.2.2 (2026-02-18) #### 修复 - **CB-Fix.2** 移除组件内 `cursor: pointer`,禁用态鼠标样式统一由 Frame `Surface` + `.snowui-disabled` 通用链路控制(禁用时为默认箭头)。 ### v1.2.1 (2026-02-18) #### 调整 - **CB-Map.1** 尺寸梯度与 Icon 对齐:`16/20/24/28/32/40/48/80`,并统一映射到 `--size-4/5/6/7/8/10/12/20`。 - **CB-Bridge.1** 补齐 `radius` 与 `border-width` 的 override 桥接:`--snowui-checkbox-radius-override` / `--snowui-checkbox-border-width-override`。 - **CB-Token.1** 尺寸链路改为 token 写法(标准档位直接用 `--size-*`,非标准值回退到 `calc(var(--size-4) * n / 16)`)。 ### v1.2.0 (2026-02-03) #### 修复 - **CB-Fix.1** 补齐 Frame 能力开关显式传参与内部变量命名规范 --- --- > **以下内容供 AI 阅读,用于维护代码与文档的关联**