跳到主要内容
界面图谱Interface Atlas
☰
EN
组件Feedback / Overlay

轻提示

Toast

别名:消息提示条吐司轻提示通知条snackbar自动消失提示右下角弹出的小提示

这是什么

在视口角落短暂出现、自动消失的小消息条,用来告知操作结果(已保存、已复制、上传完成)。 不打断当前流程,通常附一个操作入口(撤销、查看),停留约 3~5 秒后淡出。

名词辨析

Toast(Snackbar)是短暂的非打断反馈,自动消失;Alert 常驻;Modal 打断。Toast 不应放关键信息或要求必读。

交互实验室

试一试,再决定怎么用

触发不同反馈,观察自动消失与手动关闭。

正在加载实验室…

使用时关注什么

  • 01提示不能抢夺焦点,重要任务结果也要留在页面中。
  • 02有操作的提示需要足够阅读和响应时间。

✓ 适用场景

  • 操作成功、状态更新等轻量反馈
  • 配合撤销动作(删除后可撤销)
  • 后台任务完成通知(上传、导出)

✕ 不适用场景

  • 必须被看到并处理的错误(改用 alert 或表单内联错误)
  • 长消息或多条排队(改用通知中心)
  • 需要用户做出决策(改用模态框)

常见形式

成功

Success

状态色圆点或对勾图标

错误

Error

危险色,停留更久或需手动关闭

带操作

Action

附撤销或查看按钮(snackbar 风格)

实现要点

position: fixedz-indextransform: translateYanimation

固定在视口右下角或底部居中,入场 slide + fade、出场同理,全部用 transform 避免重排; 多条消息栈式叠放(新的在下面顶上来)。hover 时暂停自动关闭计时。 错误类可延长停留或要求手动关闭;尊重 prefers-reduced-motion。

平台 API

role="status"aria-live="polite"

代码里叫什么

同一控件在不同体系里的叫号——用对名字,Prompt 和检索才准。

体系名称
ARIArole="status"
shadcn/uiSonner / Toast

Sonner 是 shadcn 生态最常用的 toast 库

MUISnackbar
AntDmessage / notification
轻提示Toast警告提示Alert表单校验Form Validation
打断程度低,短暂出现不打断操作中,占据版面可见但不阻断低,错误就地显示,不打断输入流
持续性低,几秒后自动消失高,常驻直到处理或关闭高,错误停留在字段旁直到修正
错误定位能力差,无法定位到具体字段中,能说明原因与影响范围精确到具体字段和原因

相关概念

警告提示Alert

嵌在页面流内、带状态色底色的横条,用于必须被看见的消息:错误、警告、重要通知。 它占据文档流而不是覆盖内容,通常常驻直到问题被处理或用户手动关闭。

组件替代方案
模态框Modal

覆盖在页面之上、带半透明遮罩的对话框,打断用户当前流程,要求先完成弹窗内的任务或决策。 遮罩阻断与底层页面的交互,焦点被暂时困在弹窗内,是容器类浮层中打断程度最高的一种。

组件相似概念
提示滑入Toast Slide-in

操作结果以一条短提示从屏幕边缘滑入(常为底部或右上角), 停留数秒后自动滑出。 动效分三段:滑入—停留—滑出, 方向与来源一致——从边缘来,回边缘去。

动效搭配使用
撤销操作Undo Action

用"先执行、给反悔窗口"的方式处理高风险操作:删除等动作立即生效并展示结果,同时在底部弹出 带倒计时的撤销条,窗口期内一键恢复,倒计时结束才真正提交。相比弹窗确认,它不打断操作流, 又比"确认一次就完"的弹窗多了一层真正可用的后悔药。

交互模式搭配使用

容易混淆

警告提示Alert

Alert 常驻可含操作按钮;Toast 短暂、角落出现。

工具提示Tooltip

Tooltip 解释控件,Toast 反馈系统事件。

可搭配的风格

参考来源

Markdown 版(给 Agent) · JSON