用途:Comparison Table 模式用于把多个选项并排展示,让用户快速评估功能、价格或政策差异,最适用于方案与功能对比。
适用场景:方案与功能对比、供应商或工具评估、产品选型。
不适用:用户只需一两个值而非完整布局时,应使用更简单的视图;任务属于创建或编辑而非解读时避免使用;移动端若有更清晰的呈现方式,不要强行套用同一视图。
实施流程:先确认模式与问题和约束匹配,再复制示例;从 references/pattern.md 的解剖结构与示例入手,选择最小可行变体;在叠加视觉打磨前先应用无障碍、性能和交互护栏;用测试指南验证键盘、屏幕阅读器、响应式与失败场景下的行为。
无障碍护栏:键盘方面,确保仅用键盘即可完成操作,模式打开、更新或展开额外 UI 时保持焦点顺序合理,保留在高倍缩放下仍可读的可见焦点状态。屏幕阅读器方面,优先使用语义元素,仅在语义不足时添加 ARIA;在正确位置以恰当礼貌级别播报错误、加载、完成等状态变化;必要时用 aria-describedby 或结构化标题连接标签、提示与状态文本。视觉方面,不要仅靠颜色传达严重程度、完成或选中状态。
性能护栏:在添加嵌套操作、图表或内联筛选等丰富装饰前,先测量默认视图的渲染成本;布局会一次渲染过多项目时,使用分页、窗口化或渐进披露;稳定高度与占位几何,避免加载和数据刷新造成大幅布局偏移。
常见错误:先选布局后定任务,应从用户任务出发,把布局映射到对比、时序、层级或概览需求;忽略非理想状态,应提前设计数据生命周期,包括空、部分、过期和失败结果;只发布桌面端密度模型,应在实现前定义移动策略,如堆叠卡片、渐进披露或替代摘要。
相关模式:https://uxpatterns.dev/patterns/data-display/list-view、https://uxpatterns.dev/patterns/data-display/table、https://uxpatterns.dev/patterns/e-commerce/product-card。完整实现细节、示例与测试说明见 references/pattern.md。模式页面:https://uxpatterns.dev/patterns/data-display/comparison-table。