如何在视频下方放置video.js控件,而不在视频上方创建相同大小的条



设置视频元素的高度(使用video.js)会导致视频在帧中居中(我认为)。我想把控件放在视频帧的底部,但视频本身放在顶部。

目标是定位控件,使其不在视频本身的顶部,但在顶部没有与控制栏高度相同的栏。

当帧的大小与源一致时,视频就在它应该在的地方,控件就在帧的顶部和底部。要使它们位于视频下方,需要在帧高度上添加2倍的控制条高度,从而在视频上方创建控制条。提前感谢您的帮助!

这是一种方法。添加一个类,此处为vjs-static-controls,并将高度设置为比视频高30px,因为默认控制条高度为30px。

<video
  id="MY_VIDEO_1"
  class="video-js vjs-default-skin vjs-static-controls"
  controls
  preload="auto"
  width="720"
  height="330"
  poster="http://www.videojs.com/img/poster.jpg"
  data-setup="{}" />

然后,您可以覆盖定位视频和海报的样式,并处理显示和隐藏控制栏:

/* Always show control bar */
.video-js.vjs-static-controls .vjs-control-bar {
  display:block;
}
/* Don't fade out controls */
.video-js.vjs-static-controls.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
  opacity: 1;
  visibility: visible; 
}
/* Align poster to top */
.video-js.vjs-static-controls .vjs-poster {
  background-position: 50% 0;
}
/* Override tech height:100% */
.video-js.vjs-static-controls .vjs-tech {
  height: auto;
  height: calc(100% - 30px);
} 

最新更新