by 好大一小白
2011.12.13 15:18
HTML5的video标签是HTML5的一大特色。
video标签的写法
写法一:
<video src="test.mp4">您的浏览器不支持video标签</video>
写法二:
<video>
<source src="test.3gp">
您的浏览器不支持video标签
<video>
因为现阶段不同的浏览器支持的视频格式是不同的,当我们有多种格式的视频样式的时候,我们会用第二种写法来做兼容调试。
video标签支持的属性和分别的意义
Video标签含有src、poster、preload、autoplay、loop、controls、width、height等几个属性,以及一个内部使用的标签<source>。Video标签内除了可以包含<source>标签外,还可以包含当指定的视频都不能播放时,返回的内容。
|
属性
|
值
|
描述
|
|
autoplay
|
autoplay
|
如果出现该属性,则视频在就绪后马上播放。
|
|
controls
|
controls
|
如果出现该属性,则向用户显示控件,比如播放按钮。
|
|
height
|
像素
|
设置视频播放器的高度。
|
|
loop
|
loop
|
如果出现该属性,则当媒介文件完成播放后再次开始播放。
|
|
preload
|
preload
|
如果出现该属性,则视频在页面加载时进行加载,并预备播放。
如果使用 "autoplay",则忽略该属性。
|
|
src
|
url视频地址
|
要播放的视频的 URL。
|
|
width
|
像素
|
设置视频播放器的宽度。
|
|
autobuffer
|
Autobuffer
(自动缓冲)
|
在网页显示时,该二进制属性表示是由用户代理(浏览器)自动缓冲的内容,还是由用户使用相关API进行内容缓冲
|
|
poster
|
url图片地址
|
当视频未响应或缓冲不足时,该属性值链接到一个图像。该图像将以一定比例被显示出来
|
(1) src属性和poster属性
你能想象src属性是用来干啥的。跟<img>标签的一样,这个属性用于指定视频的地址。而poster属性用于指定一张图片,在当前视频数据无效时显示(预览图)。视频数据无效可能是视频正在加载,可能是视频地址错误等等。
(2) preload属性
这个属性也能通过名字了解用处,此属性用于定义视频是否预加载。属性有三个可选择的值:none、metadata、auto。如果不使用此属性,默认为auto。
None:不进行预加载。使用此属性值,可能是页面制作者认为用户不期望此视频,或者减少HTTP请求。
Metadata:部分预加载。使用此属性值,代表页面制作者认为用户不期望此视频,但为用户提供一些元数据(包括尺寸,第一帧,曲目列表,持续时间等等)。
Auto:全部预加载。
(3) autoplay属性
又是一个看名字知道用处的属性。Autoplay属性用于设置视频是否自动播放,是一个布尔属性。当出现时,表示自动播放,去掉是表示不自动播放。
注意,HTML中布尔属性的值不是true和false。正确的用法是,在标签中使用此属性表示true,此时属性要么没有值,要么其值恒等于他的名字(此处,自动播放为<video autoplay />或者<video autoplay=”autoplay” />);而在标签中不使用此属性表示false(此处不进行自动播放为<video />)。
(4) loop属性
一目了然,loop属性用于指定视频是否循环播放,同样是一个布尔属性。
(5) controls属性
Controls属性用于向浏览器指明页面制作者没有使用脚本生成播放控制器,需要浏览器启用本身的播放控制栏。
控制栏须包括播放暂停控制,播放进度控制,音量控制等等。
每个浏览器默认的播放控制栏在界面上不一样。由于我浏览器的诡异问题,Firefox和Safari的Video标签不正常,所以这两个只能在网上找截图了。
(6) width属性和height属性
属于标签的通用属性了,这个不用多说。
(7) source标签
Source标签用于给媒体(因为audio标签同样可以包含此标签,所以这儿用媒体,而不是视频)指定多个可选择的(浏览器最终只能选一个)文件地址,且只能在媒体标签没有使用src属性时使用。
浏览器按source标签的顺序检测标签指定的视频是否能够播放(可能是视频格式不支持,视频不存在等等),如果不能播放,换下一个。此方法多用于兼容不同的浏览器。Source标签本身不代表任何含义,不能单独出现。
此标签包含src、type、media三个属性。
src属性:用于指定媒体的地址,和video标签的一样。
Type属性:用于说明src属性指定媒体的类型,帮助浏览器在获取媒体前判断是否支持此类别的媒体格式。
Media属性:用于说明媒体在何种媒介中使用,不设置时默认值为all,表示支持所有媒介。你想到<style>标签的media属性了么?一样一样一样的。