UI 组件 · 表单输入
标签输入框
Tag Input
也叫:标签输入、多值输入框、关键词输入框、Tags Input、Chip Input、Input Tag
能输入多个短词的输入框:敲一个词按回车,它就变成框里的一个小标签,接着输入下一个,点标签上的 ✕ 就删掉。
点「标注」看每个部分叫什么。
怎么跟 AI 说
改成你的业务内容再发在商品编辑表单里做一个「商品标签」输入框:宽度撑满表单列,最小高度 36px;已添加的标签显示成 24px 高的灰色小胶囊,右侧带 ✕,最后一个标签后面紧跟光标,可以继续输入。按回车或逗号生成标签,退格删除最后一个;粘贴「新品,夏季,纯棉」自动拆成三个。输入时下方弹出匹配的已有标签和它们的使用次数,最后一项是「创建“xxx”」。最多 10 个、每个不超过 12 个字;重复时让已有的那个标签闪一下并提示「已添加」。输入框下方一行灰字「回车或逗号确认 · 已添加 3/10」。标签多时自动换行。
发给
01判断
你的内容是这样吗?
对照两列,确认标签输入框是不是你要找的。
02避坑
常见坏用法
看起来能用,其实会给用户添麻烦。
- 01
回车后没有生成标签,所有词挤在一个框里用逗号隔开,想删一个得小心翼翼地选中文字
- 02
没有已有标签的建议,同一个意思被建成「设计」「UI设计」「ui 设计」好几个
- 03
标签多了输入框横向滚动,前面加过的标签被藏起来看不到
03识别
怎么认出它
先看整体结构,再对照几个一眼能认出的特征。
结构
由一个可以换行的输入容器、容器里已添加的标签(每个带删除按钮)、末尾的文字光标和下方的建议列表组成,常在下方显示数量限制。
组成部分点一下,在上面的线框里标出来
识别特征
- 1一个输入框里横排着几个带 ✕ 的小胶囊,最后面是闪烁的光标
- 2输入时下方弹出一列建议词,最后一项常是「创建 xxx」
- 3标签多了输入框会变高,自动换到第二行
04解释
详细解释
标签输入框用来填一组短词:文章标签、商品关键词、技能、收件人邮箱、允许访问的域名。用户在框里打字,按回车或逗号,刚才的文字就变成框里的一个 标签(带 ✕ 的小胶囊),光标停在后面继续输入;按退格可以删掉最后一个标签。输入时下方常弹出已有标签的建议,避免「设计」「UI设计」「ui 设计」各建一个。
它和多选的 下拉选择 长得很像,框里都是一个个小标签。区别在选项从哪来:多选下拉只能从固定的列表里挑;标签输入框允许用户自己造新词,同时可以给出建议。它和 标签 的关系是:标签是展示用的小胶囊,标签输入框是生成和编辑这些标签的输入控件。
规则要写清楚:用什么键确认(回车、逗号、空格)、最多几个、每个多长、能不能重复。重复或格式不对(比如邮箱写错)时不要默默吞掉,要高亮提示。粘贴「设计, 前端, 增长」这样一串时自动拆成多个标签。标签多了框要自动换行变高,不要横向滚动把前面的藏起来。
开发者信息术语 ID、DOM 线索、识别优先级
- 术语 ID
component-tag-input- DOM 选择器
插件在本地识别时匹配这些 CSS 选择器(标签、ARIA role、常见组件库 class)。
.el-input-tag.arco-input-tag.t-tag-input.n-dynamic-tags[class*="MuiAutocomplete-root"]:has([class*="MuiAutocomplete-tag"]).tagify.react-tagsinput.ReactTags__tags.bootstrap-tagsinput.vue-tags-input.ti-input
- 类名关键词
类名、id、data-testid 拆成单词后连续匹配,例如 page-header、PageHeader_root__x7a、pageHeader 都拆成 page、header。
tag-inputtags-inputinput-tagtag-editortags-editortag-fieldtags-fieldchip-inputchips-inputkeyword-input
- 组件名
React / Vue 开发模式下读到的组件名,不区分大小写,会去掉 El、Ant、Mui 这类组件库前缀。
TagInputTagsInputInputTagChipInputTagEditorDynamicTagsTagField
- 结构特征
根据元素的排列和样式算出来的特征,只用来加分,单独不判定。
含输入控件
- 优先级
- 3 · 同一层有多条命中时,优先级高的胜出
- 版本
- v2 · 更新于 2026/09/30