在HTML5以前,网页中播放视频大多是通过浏览器插件(如Adobe Flash Player)的方式来播放。
而 HTML5 的<video>
元素则定义了一种新的标准方式来向网页中插入视频。
HTML5的<video>的方式,是当今以及未来的主流。
video元素的浏览器兼容性很好,不支持video元素的浏览器可以去死了;下表是每种浏览器支持video元素的最低版本:
元素 | |||||
---|---|---|---|---|---|
<video> | 4.0 | 9.0 | 3.5 | 4.0 | 10.5 |
<video>
元素中可能会有不只1个<source>
元素,source元素可指出流媒体的来源、格式等信息,浏览器则会以video元素中可以被兼容识别读取的第1个source元素为准,其他的都会忽略。如下例所示:
<video width="192" height="144" controls> <source src="https://logo.zhuanfou.com/zhuan.mp4" type="video/mp4"> <source src="https://logo.zhuanfou.com/zhuan.ogg" type="video/ogg"> 小贼,你的浏览器太落后了,该换浏览器啦 —_— </video>
要点1:video元素如果添加controls属性,视频则会带有播放、暂停、音量这些控制按钮;
要点2:通常情况下,video元素应该被设置好width和height属性;
要点3:如果浏览器不兼容video元素,则会显示出video元素内预设的提示文字;(对于用过时浏览器,我们要包容,与委婉劝解,千万别上去就骂“侬脑子瓦特啦”)
给<video>元素添加上autoplay
属性,视频即可自动播放。
备注:移动设备上autoplay属性是没用的,如iphone和ipad上autoplay属性是失效的。
<video width="192" height="144" autoplay> <source src="https://logo.zhuanfou.com/zhuan.mp4" type="video/mp4"> <source src="https://logo.zhuanfou.com/zhuan.ogg" type="video/ogg"> 小贼,你的浏览器太落后了,该换浏览器啦 —_— </video>
在HTML5中,有三种被支持的视频格式,分别是:MP4、WebM、Ogg
不同的浏览器对不同的视频格式的支持如下:
浏览器 | MP4 | WebM | Ogg |
---|---|---|---|
IE | 支持 | 不支持 | 不支持 |
Chrome | 支持 | 支持 | 支持 |
FireFox | 支持 | 支持 | 支持 |
Safari | 支持 | 不支持 | 不支持 |
Opera | 支持(从Opera 25开始) | 支持 | 支持 |
Media Type(媒体类型)在一些协议的消息投中被称作“Content-Type”;HTML视频的媒体类型如下表所示:
视频格式 | 媒体类型(消息头) |
---|---|
MP4 | video/mp4 |
WebM | video/webm |
Ogg | video/ogg |
HTML5为<video>元素设计很多独具特色的方法、属性和事件。比如可以控制视频的加载、播放、暂停、调节音量等。如下例所示:
<!DOCTYPE html> <html> <body> <div style="text-align:center"> <button onclick="playPause()">播放/暂停</button> <button onclick="makeBig()">放大窗口</button> <button onclick="makeSmall()">缩小窗口</button> <button onclick="makeNormal()">正常大小</button> <br><br> <video id="video-zhuan" width="192"> <source src="https://logo.zhuanfou.com/zhuan.mp4" type="video/mp4"> <source src="https://logo.zhuanfou.com/zhuan.ogg" type="video/ogg"> 小贼,你的浏览器太落后了,该换浏览器啦 —_— </video> </div> <script> var myVideo = document.getElementById("video-zhuan"); function playPause() { if (myVideo.paused) myVideo.play(); else myVideo.pause(); } function makeBig() { myVideo.width = 384; } function makeSmall() { myVideo.width = 100; } function makeNormal() { myVideo.width = 192; } </script> </body> </html>
了解更多<video>属性,请查看HTML5 Audio/Video DOM参考手册(待续)。
标签 | 描述 |
---|---|
<video> |
定义一个视频元素 |
<source> |
当作媒体元素audio和video的子元素来使用,用来定义媒体源文件信息 |
<track> |
当作媒体元素audio和video的子元素来使用,用来定义字幕 |