zoukankan      html  css  js  c++  java
  • HTML5 video 视频标签 常用属性

    最近在做手机端的 h5 页面的视频直播功能,用到了 Video 标签。其常用的属性有以下几个:

    src、poster、preload、autoplay、loop、controls、width、height等属性。

    1、src属性 和 poster属性

    跟<img>标签的一样,这个属性用于指定视频的地址,而poster属性用于指定一张图片,在当前视频数据无效时显示,可当作一张 预览图。视频数据无效可能是视频正在加载,可能是视频地址错误等等。

    <video width="658" height="444" src="http://www.youname.com/images/123456.mp4" poster="http://www.youname.com/images/123456.png" autoplay="autoplay"></video>

    2、preload属性

    此属性用于定义视频是否预加载。属性有三个可选择的值:none、metadata、auto。如果不使用此属性,默认为auto。

    <video width="658" height="444" src="http://www.youname.com/images/123456.mp4" poster="http://www.youname.com/images/123456.png" autoplay="autoplay" preload="none"></video>
    • None:不进行预加载。使用此属性值,可能是页面制作者认为用户不期望此视频,或者减少HTTP请求。
    • Metadata:部分预加载。使用此属性值,代表页面制作者认为用户不期望此视频,但为用户提供一些元数据(包括尺寸,第一帧,曲目列表,持续时间等等)。
    • Auto:全部预加载。

    3、autoplay属性

    Autoplay属性用于设置视频是否自动播放,是一个布尔属性。当出现时,表示自动播放,去掉是表示不自动播放。

    <video width="658" height="444" src="http://www.youname.com/images/123456.mp4" poster="http://www.youname.com/images/123456.png" autoplay="autoplay" preload="none"></video>

    注意:HTML中布尔属性的值不是true和false。正确的用法是,在标签中使用此属性表示true,此时属性要么没有值,要么其值恒等于他的名字

    (此处,自动播放为 <video autoplay /> 或者 <video autoplay=”autoplay” />);而在标签中不使用此属性表示false(此处不进行自动播放为 <video />)。

    4、loop属性

    <video width="658" height="444" src="http://www.youname.com/images/123456.mp4" poster="http://www.youname.com/images/123456.png" autoplay="autoplay" loop="loop"></video>

    一目了然,loop属性用于指定视频是否循环播放,同样是一个布尔属性。

    5、controls属性

    <video width="658" height="444" src="http://www.youname.com/images/123456.mp4" poster="http://www.youname.com/images/123456.png" autoplay="autoplay" preload="none" controls="controls"></video>
    

    Controls属性用于向浏览器指明页面制作者没有使用脚本生成播放控制器,需要浏览器启用本身的播放控制栏。

    控制栏须包括播放暂停控制,播放进度控制,音量控制等等。

    每个浏览器默认的播放控制栏在界面上不一样。由于我浏览器的诡异问题,Firefox 和 Safari 的Video标签不正常,所以这两个只能在网上找截图了。

    6、width属性和height属性

    属于标签的通用属性了,这个不用多说。

    7、source标签,除了上述属性外,video标签还支持内嵌标签,如 source标签,如:

    <video width="658" height="444" poster="http://www.youname.com/images/123456.png" autoplay="autoplay" preload="none" controls="controls">
    	<source src="http://www.youname.com/images/123456.ogv" />
    	<source src="http://www.youname.com/images/123456.ogg" />
    </video>

    Source标签用于给媒体(因为audio标签同样可以包含此标签,所以这儿用媒体,而不是视频)指定多个可选择的(浏览器最终只能选一个)文件地址,且只能在媒体标签没有使用src属性时使用。

    浏览器按source标签的顺序检测标签指定的视频是否能够播放(可能是视频格式不支持,视频不存在等等),如果不能播放,换下一个。此方法多用于兼容不同的浏览器。Source标签本身不代表任何含义,不能单独出现。

    此标签包含 src、type、media 三个属性。

    src属性:用于指定媒体的地址,和video标签的一样。

    Type属性:用于说明src属性指定媒体的类型,帮助浏览器在获取媒体前判断是否支持此类别的媒体格式。

    Media属性:用于说明媒体在何种媒介中使用,不设置时默认值为all,表示支持所有媒介。你想到<style>标签的media属性了么?一样一样一样的。

    一个完整例子:

    <video width="658" height="444" poster="http://www.youname.com/images/123456.png" autoplay="autoplay" preload="none" controls="controls">
    	<source src="http://www.youname.com/images/123456.ogv" />
    	<source src="http://www.youname.com/images/123456.ogg" />
    </video>

    这段代码在页面中定义了一个视频,此视频的预览图为poster的属性值,显示浏览器的默认媒体控制栏,预加载视频的元数据,循环播放,宽度为900像素,高度为240像素。

    第一选择视频地址为第一个source标签的src属性值,视频类别为Ogg视频,视频编码译码器为Theora,音频编码译码器为Vorbis,播放媒 介为显示器;第二选择视频地址不再累述。如果你还要兼容IE的话,可以在最后一个source标签后再加上Flash播放器的标签集,或者使用一点 JavaScript代码。

    延伸阅读:

    使用 JavaScript 控制 HTML5 视频播放器

    7款很棒的 HTML5 视频播放器

  • 相关阅读:
    JS判断字符串是否为空或是否全为空格
    分页-jquery.page.js插件在使用时重复触发“上一页”和“下一页”操作
    JS IE 打开本地exe程序
    bootstrap中的模态框(modal,弹出层)
    attr()、prop()、css() 的区别
    java-ActiveMQ
    java-webSocket
    java-普通类文件@Autowired自动注入为null
    HTML5<canvas>标签:使用canvas元素在网页上绘制四分之一圆(3)
    HTML5<canvas>标签:使用canvas元素在网页上绘制渐变和图像(2)
  • 原文地址:https://www.cnblogs.com/52php/p/5702852.html
Copyright © 2011-2022 走看看