标签无法实现淡入淡出,因其仅为元数据声明,不生成可操作DOM;需用JavaScript解析WebVTT并注入带transition的自定义div覆盖层,同时注意pointer-events、z-index及iOS渲染兼容性。

直接用 标签无法实现淡入淡出——它只是字幕的容器声明,不参与渲染动画。真正起作用的是浏览器内置字幕渲染层(WebVTT 渲染器),它默认不响应 CSS transition,也不暴露可操作的 DOM 节点。
为什么 本身不能加 transition
HTML 的 绕过原生 是一个“元数据标签”,只告诉浏览器:“这里有字幕文件,请按需加载并渲染”。实际字幕文字由浏览器内部合成到视频画面上,不生成可选中的 ,因此你写 .track { opacity: 0; transition: opacity 0.3s; } 完全无效。可行方案:用自定义字幕层覆盖视频
,改用 JavaScript 解析 WebVTT 文件,把字幕文本动态注入一个带类名的 opacity 和 visibility:
video 的 timeupdate 事件,实时匹配当前时间戳对应的字幕条目
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











