h5 视频全屏-横屏实现,遇到问题以及解决方案

这篇具有很好参考价值的文章主要介绍了h5 视频全屏-横屏实现,遇到问题以及解决方案。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近需要实现h5 视频全屏也就是横屏,横屏后需要将相关视频展现在侧边栏。考虑到h5是不能让手机强制横屏的,只能考虑用css 样式上横屏显示video

思路就是--利用position:fixed 定位,对于视频容器元素 transform 旋转90deg,容器的宽高调整为如下

position: fixed;
left: 0;
top: 0;
width: 100vmax;
height:100vmin;
transform-origin: top left;
transform: rotate(90deg) translateY(-100vmin);
z-index: 100000;

但是遇到一个问题,就是旋转后,video 与自己写的进度条和播放控件都会备视频遮盖,video的层级为最高,也试了单独对video旋转,不会有这种现象。只要是在父元素下transform 就会出现video 层级问题。后面百度后的 解决方案是

h5 video 全屏横屏,前端页面,vue ,css,css3,前端

还是在父元素下transform,然后在播放控制条下加 transform: translateZ(100px),试了下没问题。

显示问题解决了,但还有一个问题,就是横屏后,在不同的手机浏览器上元素有部分会被遮挡,原因就是100vmax 可能不准确 会把底部和头部的距离算上。后面解决方案就是,用js 获取文档的高度和宽度进行赋值。

const w = document.body.clientWidth;
const h = document.body.clientHeight;
document.getElementsByClassName('player-fulled')[0].style.width = h + 'px';
document.getElementsByClassName('player-fulled')[0].style.height = w + 'px';

还需要处理若用户手机自己横屏后,去除我们自己写的横屏样式 文章来源地址https://www.toymoban.com/news/detail-542187.html

去除宽高的设定
document.getElementsByClassName('player-fulled')[0].removeAttribute('style');
样式上
transform: none;
width: 100% !important;
height: 100% !important;

到了这里,关于h5 视频全屏-横屏实现,遇到问题以及解决方案的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp小程序横屏后适配问题(解决方案)

    问题一: 通常我们在小程序端切换横屏后会出现字体或宽高大小出现适配问题 解决方法 使用vmin来解决适配问题(使用rpx转换vmin) rpx与vmin的换算关系:5rpx 等价 calc(5vmin * 100 / 750)== 简单写==5rpx 等价 calc(5vmin / 7.5) 下面来看下效果(已经实现了哦) 竖屏模式下 横屏模式下 横

    2024年02月13日
    浏览(55)
  • nginx处理cros跨域遇到的各种问题及解决方案,以及https配置和浏览器https不安全问题处理

    提示:本人在生产部署服务时遇到一系列跨域问题和https配置问题,特此做以下记录: 跨域是指a页面想获取b页面资源,如果a、b页面的协议、域名、端口、子域名不同,或是a页面为ip地址,b页面为域名地址,所进行的访问行动都是跨域的,而浏览器为了安全问题一般都限制了

    2024年02月02日
    浏览(64)
  • sql中的时间范围查询【三种方式】以及Mapper.xml中遇到大于号小于号问题解决方案

    mapper注意事项 字符 转义字符 描述 gt; 大于 = gt;= 大于等于 lt; 小于 = lt;= 小于等于 \\\" quot; 双引号 ’ apos; 单引号 amp; and 遇到问题: 从数据库获取时间传到前端进行展示的时候,我们有时候可能无法得到一个满意的时间格式的时间日期,在数据库中显示的是正确的时间格式,获

    2024年02月10日
    浏览(47)
  • 设计师需要掌握的网站设计相关知识、技巧、工具以及在建站过程中遇到的常见问题和解决方案

    作者:禅与计算机程序设计艺术 “一个设计师的手册:关于网站设计的一切你需要知道”,本文全面系统地介绍了设计师需要掌握的网站设计相关知识、技巧、工具以及在建站过程中遇到的常见问题和解决方案,从基础知识到常用效果、细节调整、模板制作、SEO优化,都有详

    2024年02月06日
    浏览(55)
  • h5使用video标签解决自动全屏问题

    问题描述: h5页面内使用video标签播放视频,会自动全屏;且不能自动播放的问题 两种情况: 一、普通浏览器内 1 解决全屏播放的问题方案: 标签内添加属性:     webkit-playsinline=\\\"true\\\"      x-webkit-airplay=\\\"true\\\"     playsInline={true}     x5-playsinline=\\\"true\\\"     x5-video-orientation=

    2024年02月06日
    浏览(41)
  • vue自定义h5video视频播放器进度条组件,可拖拽、跳转、倍速、全屏

    一个进度条组件控制多个视频的播放、进度调整。视频可点击全屏观看,唯一的进度条是某个指定视频的视频信息。 全屏 点击进度条跳转 拖动滑块 在菜鸟教程上有以下几个参数的详细解说,这张图忘记哪里看的了,如有认领可评论我贴链接 倍速 // 倍速 handleChangeSpeed(item)

    2024年02月12日
    浏览(120)
  • 手机端H5页面判断是否横屏

    之前,做了一个H5项目,需要在横竖屏变化时,做一些处理,一般先要判断手机是否横屏,在不同状态下添加不同效果 方法一:JS判断 移动端的浏览器一般都支持window.orientation这个参数,通过这个参数可以判断出手机是处在横屏还是竖屏状态 屏幕方向对应的window.orientation值:

    2024年02月11日
    浏览(58)
  • Docker 如何实现非root用户构建httpd镜像以及遇到的问题有哪些

    由于公司云平台,一般的web组件。不允许用root用户来部署相关应用程序。所以只能编写dockerfile先构建镜像,然后再部署到云平台(kubenetes集群),主要从安全问题来考虑的。还有本来我这个职位职责是管理租户应用问题,但是测试机器没部署。只能自己找镜像,写file部署。

    2023年04月09日
    浏览(77)
  • C4D常遇到的错误提示以及解决方案汇总

    MAXON Cinema 4D 是一款领先的 3D 软件,可提供出色的建模、雕刻、动画和渲染功能,实现非常高效的 3D 工作流程。Maxon 要求 Cinema 4D 用户拥有许可证才能使用授权的 Cinema 4D。 在本文中,赞奇云工作站将指导您处理使用 C4D 软件时遇到的一些问题。 原因 电脑未识别出司机卡或卡

    2024年02月04日
    浏览(47)
  • Android全屏弹出Dialog显示状态栏和导航栏的问题及解决方案

    在移动端开发中,有时候我们需要在Android应用中弹出一个全屏的Dialog。然而,当我们尝试实现这样的Dialog时,可能会遇到一个问题:状态栏和导航栏在全屏Dialog中仍然可见,这可能会影响用户体验。本文将介绍如何解决这个问题,并提供相应的源代码。 问题描述: 当我们使

    2024年02月05日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包