近期开始开发公司新版官网, 首页顶部(header)是一个全屏播放的小视频, 现简单总结如下:
页面代码
<header class="header" style="width:100%;position: relative;"> <?php if(!Helper::isMobile()) { ?> <video id="homeVideo" class="home-video" autoplay loop muted poster="res/video/cover.jpg"> <source src="res/video/home_video.mp4" type="video/mp4"> </video> <?php } ?> </header>
其中php简单判断了一下是否是移动设备, 移动设备不展示视频(如果移动端展示的话, 需要解决iOS上无法自动播放的问题):
ps: 如果H5页面主要在微信浏览器中访问,可以解决iOS上视频自动播放的问题:解决iOS h5 audio自动播放(亲测有效)
class Helper { public static function isMobile() { if (preg_match("/(iPhone|iPod|Android|ios|iPad)/i", $_SERVER['HTTP_USER_AGENT'])) { return true; } else { return false; } } }
video标签样式
为了让视频占满整个屏幕, 关键在于video标签样式的设置:
.home-video { z-index: 100; position: absolute; top: 50%; left: 50%; min-width: 100%; min-height: 100%; object-fit: fill;/*这里是关键*/ width: auto; height: auto; -ms-transform: translateX(-50%) translateY(-50%); -webkit-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); background: url(../video/cover.jpg) no-repeat; background-size: cover; }
视频跟随浏览器窗口大小的改变:
$('.home-video').height(window.innerHeight); $('.header').height(window.innerHeight); $(window).resize(function() { $('.home-video').attr('height', window.innerHeight); $('.home-video').attr('width', window.innerWidth); $('.header').height(window.innerHeight); });
页面加载完成再次触发播放,防止autoplay未生效
document.getElementById('homeVideo').play();
到此这篇关于html5 video全屏播放/自动播放的实现示例的文章就介绍到这了,更多相关html5 video全屏播放/自动播放内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!
An Lock Free ID Generator for Golang implementation View on GitHub . Snowfl...
再次感谢大家对 Flutter Engage China 活动 的关注和积极参与!我们在活动前后收...
记录下一个疑问,最近在重新看canvas做点Demo这样,时间是写在2019年11月5日,以...
使用Dreamweaver设计了一个个人简历,想要给简历添加自己的照片,该怎么添加并排...
研发背景,解决什么问题 点击约束:某个按钮触发一次点击后,待接口调用有结果都...
一、概述 上一篇文章介绍了 使用 docker 部署 spring boot 并接入 skywalking ,...
前言 在上一篇文章中我为大家介绍了Simpe项目的一些 背景知识 以及如何使用 有限...
事件的防抖和节流 防抖和节流函数是我们经常用到的函数,在实际的开发过程中,如...
Dreamweaver中想要给文字中的个别文字添加背景色,该怎么添加呢?下面我们就来看...
先看效果: 实现: 1.定义导航栏的文字标签: div class=tou sapn class=logo 北...