HTML中,<video> 和 <source> 标签

<video> 标签

  • 主要容器:用于定义视频播放器的主要容器

  • 控制属性:包含控制视频播放的属性(controls、autoplay、loop等)

  • 后备内容:在标签内可以放置后备文本(当浏览器不支持video标签时显示)

<source> 标签

  • 指定源文件:用于指定视频文件的实际路径

  • 多格式支持:可以包含多个source标签,让浏览器选择支持的格式

  • 属性 :主要包含 src(文件路径)和 type(MIME类型)

示例代码:

复制代码
<video controls width="600">
  <source src="video.mp4" type="video/mp4">
  <source src="video.webm" type="video/webm">
  您的浏览器不支持HTML5视频标签
</video>

主要区别:

特性 <video> <source>
作用 视频播放器容器 视频源文件定义
位置 必须的根元素 必须放在 <video><audio> 内部
数量 一个视频一个 一个视频可以有多个(用于不同格式)
属性 控制播放器外观和行为 指定文件路径和类型
独立性 可以独立使用(有src属性时) 不能独立使用

使用场景:

使用多个<source>标签是最佳实践,因为它能确保视频在不同浏览器中的兼容性。

  1. 单个源文件

    复制代码
    <video src="video.mp4" controls></video>
  2. 多个源文件(推荐)

    复制代码
    <video controls>
      <source src="video.mp4" type="video/mp4">
      <source src="video.webm" type="video/webm">
      <source src="video.ogv" type="video/ogg">
    </video>

    注意事项:

  3. 当使用多个<source>时,浏览器会按顺序尝试,直到找到支持的格式

  4. type属性帮助浏览器判断是否支持该格式,避免不必要的下载

  5. <video>也可以直接使用src属性,但这样不支持多格式备选

相关推荐
前端逗比逗3 分钟前
AI 前端落地实战:SSE 流式输出、断点续传、打字机渲染
前端·webassembly
晴天1630 分钟前
前端跨域方案解析:JSONP 的原理、实战与演进
前端·状态模式
web打印社区31 分钟前
浏览器静默打印?先别装第三个库了
前端·vue.js·chrome·electron·pdf
艾伦野鸽ggg33 分钟前
前端异步请求的状态竞争(请求竞态)问题
前端·javascript·axios
是立不是利38 分钟前
前端交互基石:深入剖析JavaScript三级联动背后的设计哲学
开发语言·前端·javascript
动恰客流统计44 分钟前
传统红外对射客流统计为何逐步淡出主流?准确率与场景限制深度分析
大数据·前端·人工智能
老刘的望远镜1 小时前
AgentScope Java 从零(03):Agent 的记性默认全开,我在第 50 轮翻了车
java·开发语言·javascript
Rooting++1 小时前
小程序{{ }}和vue{{ }}语法的区别
前端·vue.js·小程序
前端精髓1 小时前
React 更新 state 中的对象
javascript·react.js·ecmascript
豆约翰1 小时前
css自制图书封面效果
前端·css