跳转至

交互设计基础

交互设计基础

交互设计(Interaction Design,IXD)是"人机对话的设计":用户怎么理解系统、系统怎么响应、状态怎么流转、错误怎么挽回。它不像视觉设计那样回答"好看吗",而是回答三个更硬的问题:用户知道自己能做什么吗?做了之后系统有反应吗?搞砸了还能回来吗?

在 AI 产品里,交互设计的分量比传统软件更重:模型输出不确定、生成有延迟、系统会"自作主张"地行动——这些不确定性全靠交互设计来兜底。本页是产品设计与原型类目的交互专章,与 产品设计与原型总览(AI 产品设计原则、状态机、交互范式)互为表里;术语速查见 设计师黑话速查

交互设计是什么

国际交互设计协会(IxDA)对交互设计的定义是:设计交互式数字产品、环境、系统与服务的结构与行为,目标是让人与产品之间建立有意义的关系。拆开看有三层:结构(信息怎么组织)、行为(系统做什么、怎么响应)、关系(用户是否信任、依赖这个系统)。

交互设计五要素

Alan Cooper 在《About Face》(交互设计精髓)中提出以目标为导向的设计,其分析框架常被概括为交互设计五要素:

要素要弄清的问题反例(没弄清会怎样)
用户(Users)谁在用?新手、专家还是偶尔用?给专家设计新手引导,给新手塞满快捷键
目标(Goals)用户想达成什么,而不是想要什么功能用户要"发一份正式报价",你给了"富文本编辑器"
动作(Actions)为达成目标,用户会做哪些动作?把常用动作藏在三级菜单里
工具(Tools)用什么媒介、什么输入方式完成?手机端硬塞桌面端才合理的悬停交互
场景(Context)在什么环境、什么情绪下使用?地铁通勤场景设计 5 分钟的长表单

与其他设计角色的分工

角色回答的问题典型产出
产品设计做什么、为谁做、为什么做需求文档、范围清单
交互设计用户怎么做、系统怎么响应流程图、状态机、线框图、交互说明
信息架构内容怎么组织、怎么找到站点地图、导航方案、标签体系
视觉设计看起来怎样、传达什么气质视觉稿、设计规范、品牌表达

边界在实践中会重叠,但分工的判据清晰:交互设计负责"行为与状态",信息架构负责"内容与寻路",视觉负责"表象与情绪"——同一个下拉菜单,选项怎么分组归 IA,展开收起、键盘可达归交互,样式与动效归视觉。

交互设计的对象不只是界面

新手常把交互设计等同于"画界面",实际上交互设计的对象有四类:流程(任务怎么走完)、状态(系统处于什么阶段)、反馈(每一步的响应)、行为(系统主动做什么)。AI 产品尤其如此——模型调用、工具执行、自动建议都是"系统行为",这些行为同样需要设计:何时触发、如何呈现、失败如何兜底(详见 总览 的"状态迁移"与"自主性阶梯")。

心智模型与概念模型

用户使用产品时,脑子里有一个"这玩意是怎么工作的"的模型,叫心智模型(mental model)。设计者脑子里的模型叫设计模型(design model)。两者很少直接对话——用户只通过系统表象(system image)认识系统:界面、文案、反馈、文档,都是表象的一部分(Don Norman,《设计心理学》)。设计的核心工作之一,就是让系统表象当好设计模型与用户模型之间的翻译:系统实际怎么工作不重要,重要的是表象让用户"以为"它怎么工作,且这个以为足够准确、足够可用。

执行鸿沟与评估鸿沟

Norman 用两个"鸿沟"描述交互失败的两种典型位置:

  • 执行鸿沟(gulf of execution):用户知道要达成什么,但不知道怎么操作——"我想把这页的结论放进报告里,可是按钮在哪?"
  • 评估鸿沟(gulf of evaluation):用户操作了,但读不懂系统反应——"我点了发送,这到底发出去没有?"

评估鸿沟是 AI 产品的重灾区:模型在推理、在检索、在生成,但界面一片安静,用户不知道系统进行到哪一步。任何"用户做完动作后 3 秒内看不出变化"的设计,都是在主动挖评估鸿沟。

AI 产品的心智模型错误

用户带着既有经验理解 AI,最常见的三种错误模型:

错误模型用户表现后果校正手段
把 AI 当人用敬语、道歉、说"请";以为 AI 有情绪、有立场任务型交互被社交礼仪拖慢;AI 拒绝时以为"得罪了它"能力声明文案:"我是工具,没有情绪,你可以直接下指令"
把 AI 当搜索引擎以为答案确定、准确、可穷举把 AI 的一句推测当成事实置信度表达、引用溯源、"仅供参考"标注
把 AI 当数据库以为它记得所有历史对话和个人信息隐私担忧或错误信任"它应该记得我"上下文可见:明示"AI 参考了哪些内容"、记忆可查看可删除

校正心智模型靠两样东西:文案(能力声明、示例问题、拒绝理由)与结构(入口形态、渐进披露)。详见 总览 的"文案与解释设计"——文案是能力契约,结构是契约的执行方式。

反馈与状态可见性

状态可见性是 Nielsen 十大可用性原则的第一条(Visibility of system status):系统始终要让用户知道"发生了什么、正在发生什么"。原则朴素,但 AI 产品恰恰最容易违反——推理和生成是黑盒,默认什么都不显示。

响应时间三档

Nielsen 在《Usability Engineering》(1993)中给出响应时间的三档基准,至今仍是设计评审的标尺:

响应时间用户体验设计要求
< 0.1 秒感觉即时,如同直接操作无需额外反馈
≈ 1 秒可感知延迟,但思路不被打断轻量反馈即可(如"已收到"回显、按钮进入加载态)
≈ 10 秒注意力上限,开始焦躁必须给进度指示 + 允许取消
> 10 秒用户想离开转异步任务 + 完成通知,或分阶段给中间结果

AI 生成属于典型的"1 秒以上"交互:发送后要立即回显用户消息与"正在思考"状态,长任务按阶段报进度("正在检索 → 正在分析 → 正在生成"),而不是一个无限转圈(总览 的性能预算一节给出了具体预算:首 token < 1.5 秒等)。

五态齐全

设计评审时逐态检查,任何状态缺失都是发布阻塞项:空状态(引导用户做什么)、加载态(等待可预期)、错误态(可理解、可恢复)、权限态(说明原因和出路)、离线/弱网态(降级体验)。判据:录屏观察用户在等待时的行为,反复点击、盯着屏幕发呆、退出页面,都是状态不可见的证据。

乐观 UI 与真实状态回滚

乐观 UI(optimistic UI):先按预期结果渲染,再在后台确认。发消息立即显示气泡、点赞立即变红、发送邮件立即进"已发送"——用户感觉系统快得不像话。

乐观 UI 有三个适用前提,缺一不可:

  • 成功率高:绝大多数请求都会成功
  • 风险低:失败了可以无损恢复(重新同步、再次提交)
  • 用户可感知结果语义:乐观渲染的内容和最终一致(如消息全文)

反例:支付、发送正式邮件、删除文件这类不可逆或高风险操作绝不能乐观——必须等真实状态(详见 总览 的"失败分级与 UI 兜底":不可逆操作要二次确认 + 动作预览 + 撤销窗口)。

乐观 UI 的配套设计是回滚:后台确认失败时,要明确告知"刚才的操作未成功",恢复真实状态,并给出重试路径。最差的回滚是静默改回——用户看到赞又消失了,却不知道为什么。

交互设计定律

以下定律来自认知心理学与人机交互的原始研究。每条的用法一致:先知道出处与边界,再谈应用——定律是启发式(heuristic),不是不可违反的物理法则。

Fitts's Law

  • 出处:Paul Fitts,1954 年,《The information capacity of the human motor system in controlling the amplitude of movement》
  • 含义:移动到目标的时间与目标距离成正比、与目标尺寸成反比(MT = a + b·log₂(D/W + 1))
  • 界面应用:大按钮比小按钮好点;把高频操作放在屏幕边缘与角点(边缘的"无限尺寸"效应——Mac 的菜单栏、Windows 的开始按钮都吃这个红利);右键菜单在光标处弹出;移动端把主操作放在拇指热区
  • 反例:把"发送""提交"做成小图标且远离拇指;桌面端把常用操作放在离光标最远的屏幕中央;两三个相邻小目标(如"编辑/删除"挤在一起)误触率飙升

Hick's Law

  • 出处:William Hick,1952 年,《On the rate of gain of information》
  • 含义:选择时间随选项数量与复杂度对数增长(RT = a + b·log₂(n))
  • 界面应用:减少单屏决策项;渐进披露(高级选项折叠);给默认值;把同类选项分组(分组降低有效选项数)
  • 反例:设置页一次性铺开 40 个开关;下拉菜单 30 个城市不带分组搜索;新用户第一屏就面对 12 个 AI 能力入口——同时违背本定律与 总览 的入口密度规则(每屏一个主角入口)

Miller 7±2

  • 出处:George Miller,1956 年,《The magical number seven, plus or minus two》(Psychological Review)
  • 含义:人的工作记忆容量约为 7±2 个组块(chunk);组块大小可变——一组数字、一个词、一句话都可以是一个组块
  • 界面应用:信息分组(chunking)——电话号码 3-4-4 分段、银行卡号四位一组、导航项分组;长表单分步呈现
  • 批判性解读:Miller 本人研究的是瞬时识别而非工作记忆,后续研究(Cowan 2001)显示真实容量更接近 4±1。所以"导航项不能超过 7 个"是误用,但"分组能提升记忆与扫描效率"依然成立——该用分组,别背数字

Jakob's Law

  • 出处:Jakob Nielsen,2000 年提出(Nielsen Norman Group)
  • 含义:用户把在其他产品上积累的经验带到你的产品里,期望你的产品按他们已经熟悉的方式工作
  • 界面应用:遵循平台惯例(iOS 的左上角返回、Android 的系统返回键、底部 Tab);沿用用户熟悉的模式(购物车、下拉刷新);创新要放在"内容与能力"上,而不是"操作惯例"上
  • 反例:为差异化把"保存"改成其他动词、隐藏返回路径、自创手势——用户会用脚投票回熟悉的竞品

Tesler's Law

  • 出处:Larry Tesler,1980 年代(Xerox PARC / Apple),复杂度守恒定律
  • 含义:每个应用都存在无法消除的固有复杂度,关键不是消灭它,而是决定由谁承担——系统还是用户
  • 界面应用:把复杂度推向系统(合理默认值、自动完成、智能填充);对用户只暴露当前任务必需的复杂度;复杂功能给"专家模式"入口
  • 反例:"简单"的设计把复杂度转嫁给用户——为了界面清爽删掉确认步骤,结果用户反复为误操作买单;AI 产品里把全部模型参数直接摆给用户调,也是转移复杂度

Doherty Threshold

  • 出处:Walter Doherty 与 Ahrvind Thadani,IBM,1982 年,《The economic value of rapid response time》
  • 含义:系统响应时间低于 400 ms 时,用户注意力与系统响应节奏匹配,生产力显著提升;高于此阈值用户会进入"等待模式",出错率与挫败感上升
  • 界面应用:把"可感知响应"目标定在 400 ms 内;做不到真响应就做即时反馈——按钮按下态、本地回显、乐观 UI,把等待的体感拆碎
  • 反例:点击后 2 秒无任何反应再弹出加载(用户已开始怀疑点没点上);把 AI 长任务的"思考中"状态当唯一反馈,中间没有任何阶段信号

Postel's Law

  • 出处:Jon Postel,RFC 793(1981)——TCP 规范的鲁棒性原则:"发送要保守,接收要宽容"
  • 含义:系统对外输出要严格一致,对输入要宽容处理
  • 界面应用:输入宽容——邮箱允许大小写与首尾空格、日期接受多种格式、电话号码容忍分隔符;AI 产品里体现为对用户口语化、错别字、中英混杂的提问都能理解
  • 反例:对输入一刀切报错("请输入正确的邮箱格式"而用户根本看不出哪里不对);反过来也要注意边界:宽容不等于含糊——输入歧义时应该澄清而不是硬猜(AI 拿不准就追问,见 总览 的置信度表达)

Aesthetic-Usability Effect

  • 出处:Masaaki Kurosu 与 Kaori Kashimura,1995 年(CHI 论文);Noam Tractinsky 1997 年复制验证并推广
  • 含义:用户倾向于认为美观的产品更好用,且这种感知与实际可用性水平未必一致
  • 界面应用:视觉打磨直接影响用户对可用性与可靠性的评价——AI 产品尤其如此:一个精致的结果卡片,比一个裸文本框更让用户相信答案是经过验证的
  • 批判性解读:美是"感知可用性"的放大器,不是可用性的替代品——一个好看但流程断裂的产品,用户夸完还是流失。反过来,可用性测试要警惕美观偏差:所以 原型与设计交付 建议早期用低保真原型测流程,避免被漂亮皮相掩盖结构问题

约束与防错

约束的四种类型

Norman 在《设计心理学》中把约束分为四类,作用是让正确操作显而易见、错误操作难以发生

类型原理例子
物理约束形状、大小、位置决定可能性USB 接口插不进去的方向;内存条缺口
逻辑约束从情境与关系中推导未勾选条款时"提交"按钮置灰;灰色 = 不可用
文化约束社会惯例与习得规范红色表示危险、对勾表示确认、左滑删除
语义约束含义本身决定用法垃圾桶图标暗示可丢弃;门把手暗示拉、横杆暗示推

错误预防:强制功能

预防比恢复便宜。强制功能(forcing function)用约束阻止错误发生:

  • 互锁(interlock):条件不满足时动作不可用——如未同意协议不能注册
  • 确认(confirmation):不可逆动作前要求确认——删除、支付、发送(总览 要求不可逆操作二次确认 + 动作预览)
  • 输入约束:从源头限制非法输入——电话号码输入框只允许数字、金额输入框限定格式、字数上限直接截断而不是事后报错

错误恢复:错误信息三要素

错误不可能完全避免,恢复设计的核心是错误信息三要素(Nielsen):发生了什么 / 为什么 / 怎么办。三缺一都是不合格的错误信息:

要素问句合格示例不合格示例
发生了什么什么出错了?"消息发送失败""操作失败"
为什么原因是什么?"网络连接已断开""系统错误 500"
怎么办我能做什么?"点击重试;或检查网络后自动重发""请联系管理员"

撤销与重做

  • 撤销是交互设计的最后防线:一切错误最终都能靠"撤销"兜底,是最可靠的容错(总览 交互质量标准中的"误删草稿 → 5 秒内可撤销")
  • 撤销粒度:单步撤销(Ctrl+Z)与多步撤销(撤销栈);对"一组操作"做事务性撤销(如"取消全部格式调整")是更懂用户的粒度
  • 重做:撤销的撤销;AI 产品里"重新生成"实质是内容维度的重做
  • AI 特有的撤销语义:AI 生成的文本被用户编辑后,撤销要回退到"编辑前"还是"生成前"?编辑历史(diff)比单次撤销更能表达意图——这与 总览 的"版本对比、历史回放"一致

导航与信息架构

导航解决"用户怎么到达功能";信息架构(IA)解决"内容怎么组织"。两者的关系:IA 是地图,导航是路上的指示牌。

导航三件套与面包屑

信息架构的经典框架(Rosenfeld / Morville / Arango,《Information Architecture》)把导航分为:

  • 全局导航(global):所有页面可见的主入口——顶部导航栏、底部 Tab
  • 局部导航(local):当前区块内的子页面入口——侧边栏
  • 情境导航(contextual):上下文相关的内容跳转——正文里的相关链接、"你可能还想看"
  • 面包屑(breadcrumb):层级超过两层的网站必备,回答"我在哪、怎么回去";位于页面顶部,路径可逐级点击返回

判据:用户在任何页面都能回答三个问题——我在哪、能去哪、怎么回去。答不出就是导航失职(呼应 总览 的"可达性:没有死胡同")。

导航模型

模型结构适用例子
层级(hierarchy)树状分类,层层下钻内容型网站、后台系统电商分类、文档站
枢纽(hub-and-spoke)从中心页出发,完成任务返回任务型、流程型 App打车 App:首页 → 下单 → 返回
线性(linear)前后顺序推进向导、多步流程注册流程、结算流程
矩阵(matrix)多个维度交叉定位数据密集工具表格、筛选器组合

搜索与浏览

浏览靠导航,搜索靠关键词,两者互补:知道要找什么 → 搜索;不知道有什么 → 浏览。搜索不是导航的替代品,深内容站点两者都必需。搜索设计要点:容忍拼写错误与同义词、结果按相关性分组、无结果时给修正建议与浏览入口("没有找到 X,试试 Y 或浏览分类")——AI 搜索(生成式回答)同样要保留"无结果引导",而不是编造答案。

IA 的核心工具

  • 卡片分类(card sorting):让真实用户把内容卡片按自己的理解分组——开放式(用户自定分组)用于探索信息架构,封闭式(给定分类)用于验证现有架构
  • 树测试(tree testing):给用户一棵静态目录树,让他们完成"找到 X"的任务,测量可发现性(成功率、时间、路径)——上线前验证 IA 的廉价手段

导航与 AI 产品

  • 会话入口放哪:对话能力要么嵌入任务流(旁路助手,如编辑器里的 AI 面板),要么独立成入口(如对话 Tab),不要两个都做强入口总览 导航模型与入口密度规则:每屏只给一个"主角 AI 入口",其余做成上下文相关微入口)
  • AI 入口密度:同一屏超过 2~3 个 AI 入口,用户失去焦点;入口密度是 AI 产品特有的导航决策
  • AI 生成内容的导航地位:AI 生成的新页面/新文档要不要进导航树?进树会污染结构,不进又难找回——折中方案是"生成内容进个人空间/最近使用",而不是进全局导航

表单设计

表单是"把用户的意图结构化"的交互,也是错误率最高、最需要打磨的界面。核心原则(Luke Wroblewski,《Web Form Design》):尽可能少问、一次只问一件事、让输入尽量不费力

标签位置

位置优点缺点适用
顶部标签扫描最快、移动端友好垂直占用多移动端、短表单、多数场景
左对齐标签标签与输入框对应清晰、长表单省垂直空间完成速度慢(视线来回)复杂长表单、桌面端
占位符当标签省空间、界面干净输入后标签消失、无辅助技术支持、格式示例被误当默认值不推荐,尤其是字段要求特定格式时

浮动标签(floating label:聚焦时标签浮到边框上方)是占位符标签与顶部标签的折中,但只在"空间极度紧张"时用——多数情况下顶部标签更稳。

必填与选填

  • 大多数字段必填 → 只标注选填("选填"两字),减少视觉噪音
  • 大多数字段选填 → 只标注必填* 或"必填")
  • 不要用颜色单独区分必填(色盲用户、低对比度下失效)

输入类型与键盘类型

移动端键盘类型决定输入效率,这是表单设计最容易漏的一环:

场景实现效果
手机号 / 数字inputmode="numeric"type="tel"弹出数字键盘
邮箱type="email"弹出带 @ 的键盘,自动校验格式
短信验证码autocomplete="one-time-code"系统自动填充验证码
姓名 / 地址 / 信用卡autocomplete="name" / "street-address" / "cc-number"浏览器与密码管理器自动填充

判据:凡是系统里已有或浏览器能记住的信息,都不该让用户重新敲一遍

校验时机

时机优点缺点适用
失焦校验(blur)及时又不打断输入可能过早打断(用户还没输完)邮箱、手机号等单字段规则明确的输入
提交校验一次汇总全部错误反馈太晚,用户要来回改字段间互相依赖、规则复杂的表单
边输边校验(inline)最即时每击键报错会让人抓狂密码强度、字数统计等"非错误"提示

无论哪种时机:失败后聚焦到第一个错误字段;错误提示出现在字段附近而非页面顶部;同一表单统一一种主校验时机。

错误信息与帮助文本

  • 错误信息套用"三要素"(见上文);格式类错误给出正确示例("格式应为 2026-08-24")
  • 帮助文本(help text)放字段附近、输入框下方,而不是集中在页面底部;AI 产品里"示例问题/示例输入"就是最好的帮助文本
  • 帮助文本别解释显而易见的("请输入您的邮箱"),只解释需要说明的("仅支持企业邮箱")

默认值与智能填充

  • 合理默认值是表单最快的路径:默认城市、默认语言、默认选项——但默认值必须安全(不默认勾选营销订阅、不默认同意数据共享)
  • 智能填充:地址联想、历史记录、AI 预填(根据会话上下文预填字段)——AI 预填要可编辑、标注来源("根据您的简历预填,请核对"),且不掩盖必填项

多步表单

  • 超过 6~7 个字段(一个工作记忆组块上限)考虑分步,每步 3~5 个字段
  • 进度指示:步骤条 + 当前步骤 + 剩余步骤;明确"返回不会丢失已填数据"
  • 保存草稿:长表单必须防丢失——中断后可恢复(本地草稿或服务端草稿),否则一次误关页面就是一次用户流失
  • 分步的分组逻辑要符合用户心智(按"信息类别"而非"界面页数"分)

CAPTCHA 与人机验证的体验代价

验证码是安全与体验的正面冲突:

  • 扭曲文字/图片选择类验证码对真实用户是摩擦,对视障用户几乎不可用(WCAG 2.2 的 3.3.8 可访问认证要求认证流程不依赖单一认知测验,且要有无障碍替代)
  • 现代人机验证(行为分析、无感验证)降低摩擦,但仍要支付隐私与性能成本
  • 判据:验证码挡住的机器人多,还是用户多? 数据说话——登录页流失率上升时先怀疑验证码;能用邮箱/短信验证、设备信任等替代手段时,优先替代

手势与触控

基本手势谱

手势语义注意
点按(tap)主要操作,等同鼠标点击移动端最高频手势
长按(long press)移动端"右键":上下文菜单、编辑模式可发现性差,必须有可见替代入口
滑动(swipe)滚动、翻页、左滑删除左滑删除要可撤销(误触率高)
拖拽(drag)移动元素、排序目标要大,防误触
捏合(pinch)缩放双指操作,需配套双击缩放
双击(double-tap)快捷缩放、点赞与单击冲突时设计回退

触控目标尺寸

规范最小目标间距
Apple HIG44×44 pt相邻目标间距 ≥ 8 pt(约)
Material Design 348×48 dp间距 ≥ 8 dp
WCAG 2.2(2.5.8,AA)24×24 CSS px

判据:把手指(或光标)放在目标上时,不会同时碰到相邻目标。常见翻车:把"删除"和"编辑"做成并排小图标、"发送"按钮小于拇指、评论区按钮间距不足。

手势的可发现性

手势是隐性的——界面上没有任何东西告诉用户"这里可以长按/左滑"。可发现性三规则:

  1. 每个手势都有可见的替代入口(长按菜单 → 右下角"⋯"按钮;左滑删除 → 长按进入编辑模式)
  2. 手势的语义要符合文化惯例(西方右滑 = 喜欢/通过,左滑 = 拒绝,方向反了会灾难)
  3. 压感(3D Touch)是反面教材:层级按压菜单发现性极差,苹果最终在 iPhone 11 起移除压感屏——没有可见提示的隐藏手势 = 不存在的手势

压感与笔输入

  • 压感(force touch):适合绘图、笔刷等专业场景;不适合做功能入口(发现性灾难)
  • 笔输入(stylus / Apple Pencil):精度任务(绘图、标注、手写签名)无可替代;笔势(画圈选中、划线删除)要注意与手指手势的区分
  • 笔输入的产品要同时支持手指与触控笔的映射,且笔的悬浮(hover)可做预览——这是笔输入独有的优势

多输入形态映射

同一功能要有多条输入路径(冗余访问是可访问性的基本要求):

能力鼠标触控键盘语音
查看提示hover长按 / 点击Tab + Enter / 焦点"这是什么"
打开菜单点击点击快捷键"打开菜单"
删除点击左滑 / 长按Delete 键"删除这个"

触控没有 hover——桌面端靠 hover 呈现的信息(tooltip、预览、操作按钮),触控端必须能通过 tap 获得;语音是最容易被忽视的输入形态:语音命令的发现性与手势同样差,需要"可以说哪些话"的可见提示(设置页的语音命令列表)。

动效与微交互

微交互四要素

Dan Saffer 在《Microinteractions》(2013)中定义微交互的四要素,任何一个小交互都可以用这四个问题拆解:

要素要回答的问题例子(点赞按钮)
触发器(trigger)什么开始它?用户触发还是系统触发?用户点击;或浏览到文章底部系统自动预载
规则(rules)开始后发生什么?状态如何变化?图标从空心变实心 + 数字 +1;再点则取消
反馈(feedback)用户怎么知道发生什么了?图标弹跳动画 + 颜色变化
循环(loops & modes)它会重复吗?什么改变它的行为?双击连赞的节流;已点过的文章不再计数

设计评审时把每个微交互填一遍这四格,填不出来的就是没想清楚。

过渡动效的用途

动效不只是好看,它承担信息传达功能:

  • 空间连续性:元素"从哪里来到哪里去"——列表项展开为详情页、对话框从触发按钮处弹出,让用户建立空间地图
  • 因果关系:操作对象与结果对象之间的视觉关联——删除的条目飞入垃圾桶
  • 层级与焦点:新层级进入时旧层级后退/变暗,明确"当前焦点在哪"

缓动函数与时长

缓动特征用途
linear匀速,机械感进度条、旋转加载等"机械运动"
ease-in加速元素离开/退场(加速离开视线)
ease-out减速界面元素进入/出现——最常见,先快后慢最自然
ease-in-out先加速后减速双向过渡、循环动画
spring弹性,过冲回弹强调、庆祝类动效;慎用于严肃场景

时长守则:短促。小元素过渡 100~200 ms,大元素/全屏过渡 200~300 ms,超过 300 ms 用户开始觉得拖沓;动效时长应随元素尺寸与位移距离微调,但整体保持快。

动效可访问性

  • prefers-reduced-motion:用 CSS 媒体查询为"减少动态效果"的系统设置提供静态替代(Material Design 等规范均有对应处理)
  • 闪烁限制:任何闪烁不超过 3 次/秒(WCAG 2.3.1),否则可能诱发光敏性癫痫
  • 动效要服务信息,不能掩盖信息:关键状态(成功/失败)不能只靠动画传达,必须同时有非动画的信号(图标、文字、颜色——且颜色不能是唯一信号)

对话式界面(CUI)

对话式界面(conversational UI)把"人机对话"从隐喻变成字面现实。它是交互范式的一种,不是万能范式——适用边界必须想清楚(总览 的"范式选择决策链"是起点)。

适用边界:开放任务 vs 结构化任务

任务类型特征适合的范式为什么
开放任务发散、探索、无标准答案对话式界面用户不知道答案长什么样,对话可以边走边想
结构化任务固定字段、强格式、高准确率要求表单 / 向导对话收集 10 个字段会让人崩溃,还容易漏

判据:如果任务能画成一张表单,就别用对话。反例:银行开户、报销填写用聊天机器人——用户更想要表单的确定性。对话适合的是"我不知道该怎么问"的场景(新手咨询、头脑风暴、知识问答)。

对话设计的要点

要点设计问题落地示例
开场引导用户知道能问什么、怎么问吗?空状态给 3 个示例问题 + 能力边界说明
澄清没听懂时怎么办?低置信度不硬猜,直接追问:"您指的是 A 还是 B?"
打断生成到一半能停止/纠正吗?停止生成按钮、随时可插话纠正
上下文AI 记得什么、用户能控制吗?上下文可见(引用来源)、可清除(重开对话)
错误恢复答错后用户走得出来吗?"重新生成 / 编辑 / 转人工"三件套常驻

这五项与 总览 的"对话式 UI 的可用性测试要点"一一对应(开场引导、追问路径、错误恢复、过程感知),设计时按项设计,测试时按项验收。

GUI+CUI 混合界面

纯对话界面不是最优解——对话负责表达意图,图形元素负责降低认知负担。混合界面(GUI+CUI)比纯对话稳的原因:

  • 建议选项(suggestion chips):把可能的追问做成可点的按钮,用户不用想措辞
  • 富卡片:结果用结构化卡片呈现(表格、列表、图片),比纯文本可读性强一个数量级
  • 对话内嵌表单:需要精确输入时(日期、金额、地址)插入表单组件,填完继续对话
  • 可点击溯源:引用来源做成可点击链接,用户点开核验

混合界面的本质是"把对话的高自由度与表单的高确定性结合起来"——这也是 ChatGPT 们从纯文本框演进出 Artifacts、画布、可点击卡片的原因。

可访问性(WCAG 2.2)

可访问性不是"为残障用户加的功能",而是交互设计质量的底线:键盘可达、对比度、焦点可见,受益的是所有用户(地铁上的单手用户、强光下的户外用户、老年人)。

四大原则(POUR)

原则含义违反的典型表现
可感知(Perceivable)信息能以多种方式被感知只有颜色传达状态、图片无 alt、视频无字幕
可操作(Operable)所有功能都能操作只能鼠标操作、焦点不可见、时间限制不可调
可理解(Understandable)界面与信息可理解错误信息不说人话、导航位置混乱、突然跳转
健壮(Robust)能被辅助技术正确解析语义标签缺失、ARIA 滥用、键盘焦点丢失

关键成功标准(WCAG 2.2,AA 级)

标准要求说明
1.4.3 对比度正文 ≥ 4.5:1,大文本 ≥ 3:1AI 输出区同样适用,别只查设置页
1.4.10 Reflow320 px 宽不丢信息、不双向滚动移动端自适应
2.1.1 键盘所有功能键盘可达键盘走查是验收必做项
2.3.1 闪烁闪烁 ≤ 3 次/秒防光敏性癫痫
2.4.7 焦点可见焦点指示清晰可见Tab 键走一遍全站
2.4.11 焦点不被遮挡(2.2 新增)聚焦元素不被浮层遮挡打开对话框后焦点管理
2.5.8 目标尺寸(2.2 新增)目标 ≥ 24×24 CSS px与 HIG 44pt / Material 48dp 的关系:这是底线,平台规范更严
3.3.1 错误识别错误要能被识别、被描述三要素的第一步
3.3.7 冗余输入(2.2 新增)同信息不重复输入与表单"默认值与智能填充"呼应
3.3.8 可访问认证(2.2 新增)认证不依赖单一认知测验CAPTCHA 的无障碍替代

ARIA 简述

ARIA(Accessible Rich Internet Applications)为自定义组件补充语义。第一法则是:能用的原生 HTML 就用原生 HTML<button> 优于 div + 点击事件),ARIA 是给原生语义覆盖不到的地方打补丁的:

  • 角色(role)role="dialog"role="tablist"——告诉读屏"这是什么组件"
  • 属性(property)aria-label(无文本图标的名称)、aria-describedby(关联描述)、aria-expanded(展开状态)
  • 状态(state)aria-live(动态区域播报)——AI 流式输出必须用aria-live="polite" 让读屏在输出稳定后播报,配合 role="status"aria-busy 表示仍在生成

写 ARIA 的三个常见错误:写了 role 却不管键盘与焦点(ARIA 只补语义,不补功能);对读屏友好的内容全站 aria-live(会变成噪音轰炸,流式输出应合并播报);用 aria-label 覆盖可见文本(读屏与视觉不一致)。

无障碍审计工具

工具类型用法
axe(Deque)自动化规则引擎集成到 CI,自动跑规则集
LighthouseChrome 内置审计页面级审计,含对比度与 ARIA 检查
WAVE浏览器扩展可视化标注问题位置
手动走查人肉键盘走查 + 读屏走查(VoiceOver / NVDA)+ 高对比度模式

自动化工具只能抓到约 30% 的问题——键盘走查与读屏走查是必做项,自动化是补充不是替代(与 设计评审与可用性度量 的评审节奏配合)。

无障碍的工程落地:默认而非附加

"无障碍是交互设计的一部分而非附加"的工程含义:

  • 组件库默认含焦点管理:模态框默认焦点陷阱(focus trap)、关闭后焦点回到触发元素(focus restoration)、Tab 组件默认方向键切换——这些是组件默认行为,不是每个页面单独补
  • 设计系统锁定底线:对比度、目标尺寸、间距写进 design tokens,组件层强制(详见 设计系统与规范);设计评审只查"有没有绕过 token 的例外",而不是逐页量对比度
  • 验收进流程:键盘走查与读屏走查列入每个迭代的验收清单,而不是上线前一次"无障碍冲刺"

一张表收束

交互问题核心原则判据一句话
用户理解系统心智模型与系统表象对齐用户能说出"它能做什么、现在在干什么"吗
系统响应状态可见 + 响应三档任何等待都有反馈,长任务有进度可取消
操作效率定律组合拳(Fitts / Hick / Doherty)高频操作大、就近、< 400 ms 有响应
出错防救约束 + 三要素错误信息 + 撤销用户不求助任何人能自己走出错误吗
找得到导航三件套 + 搜索 + 树测试用户 3 步内能回答"我在哪、能去哪"
填得对表单最小化 + 合理默认值用户不用重敲系统已有信息
触得好目标 ≥ 44 pt + 手势有替代入口手指落点不会误触,隐藏手势都有可见入口
看得懂动效传达信息 + 短促去掉动画信息仍然完整
聊得顺对话混合图形 + 澄清兜底答错后用户走得出来
用得了WCAG AA + 键盘走查全程键盘能用,读屏播报正确

交互设计的目标不是"界面好看",而是让用户始终知道系统在干什么、自己还能干什么——这条判据适用于传统界面,也适用于每一次 AI 输出。

来源说明

以下来源均于 2026-08-24 验证可达;页面可能随时更新。

经典著作

  • Don Norman, The Design of Everyday Things(设计心理学:系统表象、执行/评估鸿沟、约束,2013 版)
  • Alan Cooper 等, About Face(交互设计精髓:目标导向设计、交互设计五要素)
  • Dan Saffer, Microinteractions(微交互四要素,2013)
  • Luke Wroblewski, Web Form Design(表单设计,2008)
  • Rosenfeld, Morville, Arango, Information Architecture(信息架构:导航框架、卡片分类与树测试)

原始文献与论文

  • Fitts, "The information capacity of the human motor system…"(1954)
  • Hick, "On the rate of gain of information"(1952)
  • Miller, "The magical number seven, plus or minus two"(1956)
  • Nielsen, Usability Engineering(响应时间三档,1993)
  • Doherty & Thadani, "The economic value of rapid response time"(IBM,1982)
  • Postel, RFC 793(1981,鲁棒性原则)
  • Kurosu & Kashimura(1995)与 Tractinsky(1997),Aesthetic-Usability Effect

规范与官方文档

仓库内相关页面