最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
HTML中track多语言字幕 与 HTML中track标签kind属性取值
时间:2026-07-22 16:53:48 编辑:袖梨 来源:一聚教程网
track标签的kind属性有5个合法值:“subtitles”“captions”“descriptions”“chapters”“metadata”;其他值被忽略或降为“metadata”,各值语义、渲染行为及兼容性要求均不同。
track标签的kind属性有哪些合法值
kind 属性决定字幕轨道的语义类型,浏览器据此决定是否默认显示、如何渲染、是否出现在字幕菜单中。它不是随便填的字符串,必须是规范定义的枚举值。
W3C 规范明确允许以下 5 个值(大小写敏感,必须全小写):
-
subtitles:为听障或非母语用户提供的翻译/转录字幕,**最常用** -
captions:为听障用户设计的字幕,包含说话人、音效、音乐等非语音信息 -
descriptions:音频描述,供视障用户收听的视频内容口头解说(通常配合屏幕阅读器) -
chapters:章节标记,用于生成播放器时间轴导航(src指向 WebVTT 章节文件) -
metadata:纯数据轨道,不显示,供脚本读取(如关键词、场景ID等)
填其他值(比如 subtitle、zh-CN、transcript)会导致该 track 被浏览器忽略——不会报错,但也不会出现在字幕开关菜单里。
subtitles 和 captions 在实际使用中怎么选
多数多语言字幕场景应无条件用 subtitles。它的行为最符合“切换语言”的预期:用户打开字幕后,能从下拉菜单里看到「English」、「中文」、「Español」等选项并自由切换。
立即学习“前端免费学习笔记(深入)”;
captions 的定位不同:它默认面向听障人群,部分浏览器(如 Chrome)在系统开启「高对比度模式」或「辅助功能设置」时才默认启用;且播放器 UI 通常将其与 subtitles 分开归类(例如 YouTube 字幕菜单里,“CC” 图标专指 captions)。除非你明确提供含音效描述的完整无障碍字幕,否则别用它。
常见误用:
– 把中文字幕设为 kind="captions",结果用户找不到开关
– 同一视频混用 subtitles 和 captions 轨道,导致菜单混乱、逻辑断裂
多语言字幕必须配srclang和label
仅靠 kind="subtitles" 不足以支持多语言切换。浏览器需要两个额外属性才能正确分组和标识:
-
srclang:必须是有效的 BCP 47 语言标签(如zh、zh-Hans、en-US),不能写Chinese或english -
label:用户看到的菜单文字,建议用目标语言自述(如label="中文"、label="English"),避免用label="Chinese"显示给中文用户
缺少 srclang 的轨道会被浏览器视为“未知语言”,可能被过滤或降级处理;label 缺失时,部分浏览器会 fallback 到 srclang 值,但显示效果不可控(比如显示 zh-Hant 而非「繁體中文」)。
WebVTT 文件本身不决定 kind,由 track 标签控制
同一个 .vtt 文件可以被多个 track 元素引用,分别设不同 kind、srclang、label。文件内容里没有 kind 定义,也不应写语言声明(如 LANGUAGE zh 是无效语法,WebVTT 不支持)。
容易踩的坑:
- 以为在 .vtt 文件头加注释(
NOTE Chinese subtitles)能影响 kind —— 实际无效 - 复用英文
captions.vtt文件,只改track的srclang="zh"就当成了中文字幕 —— 内容没变,只是标签错了 - 用
kind="subtitles"引用一个含音效描述的 .vtt,结果普通用户看到「[音乐起]」这种信息,体验突兀
真正起作用的只有 HTML 中 track 元素的属性组合,文件内容只管呈现什么文字。
相关文章
- 苹果折叠屏爆料汇总:售价超两万,比例阔折叠 07-30
- 纪念碑谷3 纪念碑谷3手游玩法详解与体验评测 07-30
- 晴空双子金卡阵容推荐 晴空双子高性价比氪金养成指南 07-30
- 大周列国志全新派系系统 07-30
- 兔小萌世界甜系小房间搭建指南 兔小萌世界高颜值甜系房间布置全流程详解 07-30
- 大周列国志全新剧本包西汉剧本包 07-30