【问题标题】:Full video background using video.js使用 video.js 的完整视频背景
【发布时间】:2012-11-14 10:53:51
【问题描述】:

我正在尝试制作一个全屏视频背景,即使在调整窗口大小时也始终显示完整尺寸。

这里是网站: http://webkunst.comeze.com/test/

这是我遇到的问题:

在宽屏上显示如下: http://webkunst.comeze.com/test/wide.png

在竖屏上显示如下: http://webkunst.comeze.com/test/vertical.png

如您所见,它总是在视频中添加一些黑条,而不是将视频大小调整为全屏。

这是我的标记:

           <div id="full-background">
                <video class="video-js vjs-fullscreen"  autoplay preload="auto"  poster="http://video-js.zencoder.com/oceans-clip.png" data-setup="{}">
                    <source src="video/1.mp4" type='video/mp4' />
                </video>
            </div> 

使用这个 css:

#full-background {
  z-index: -999;
  min-height: 100%;
  min-width: 1024px;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
}


.video-js.vjs-fullscreen {
  position: fixed;
  overflow: hidden;
  z-index: 1000;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
  _position: absolute;
  /* IE6 Full-window (underscore hack) */

}

我正在使用 video.js 插件: http://videojs.com/

任何想法以及如何使视频全尺寸而不在侧面或顶部/底部显示黑条?

【问题讨论】:

    标签: javascript jquery html css ajax


    【解决方案1】:

    你试过BigVideo.JS吗? 它使用 Video.JS 作为核心并在其之上构建。它只需要 jQuery。

    【讨论】:

    • BigVideo 似乎是一个解决方案。有一个未记录的“容器”选项,可让您在特定 div 上使用它。
    • @mikemaccana 哇,你帮我省了很多麻烦。我正在考虑使用 bigvideo.js 并且已经准备好我的容器并设置了样式,但即将放弃它并转而使用 vanilla videojs。他们为什么不把这个选项放在网站上,这超出了我的理解。
    【解决方案2】:

    这里好像只能指定默认的视频宽度和高度:

    http://videojs.com/tag-builder/

    您不能拉伸视频本身以填充不同的屏幕分辨率,它始终保持纵横比。

    但是你可以指定颜色而不是黑条:

    .vjs-default-skin .vjs-play-progress { background: #900; }
    

    或皮肤:

    <video class="video-js my-custom-skin" ...>
    

    来源:https://github.com/zencoder/video-js/blob/master/docs/skins.md

    【讨论】:

    • 感谢您的回答,但我希望我能找到一个解决方案来完成它。
    • 如果您在外面找到任何解决方案,请回帖。
    【解决方案3】:

    您可以使用媒体查询根据纵横比应用不同的 CSS 类吗?

    我使用的是宽屏笔记本电脑,可以使用以下命令将视频全屏显示。

    .video-js .vjs-tech {
    width: 100% !important;
    }
    
    video {
        width:100%;
    }
    

    对于纵向屏幕,我可以使用以下方法使其填充高度。

    .video-js .vjs-tech {
    height:100% !important
    }
    
    video {
    width:auto !important;
    }
    

    因此您可以使用@media screen and (device-aspect-ratio: 16/9) 之类的媒体查询来应用不同的维度。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多