移动端遇到的问题小结--video

本篇主要是针对Android系统,所遇到的问题。

  • 1. video的全屏处理:

  这里说的全屏是指针对浏览器的全屏,而不是整个手机的全屏。要想全屏效果只需对video标签加   webkit-playsinline 。

  但是这样做会有一个问题:针对偏长的手机,视频会出现居中的效果。针对这种情况,可以对video加属性  object-fit:fill 

<video id="myvideo" src="test.mp4" webkit-playsinline="true" object-fit:fill></video>
  • 2. video的自动播放

  自动播放是指页面加载完毕后,视频自动开始播放。但是目前而言,Android机是不支持这种自动播放的。

  解决办法:引导用户触发滑屏或者touch事件进行触发 video.play()  进行播放

  • 3.移动端设置1px的border:

  为解决兼容问题,以下为固定代码。代码放置在需要写border的容器的css样式里面。

  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(.5, #ffffff), color-stop(.5, transparent)) top left no-repeat, -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#ffffff)) bottom left no-repeat, -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), color-stop(.5, #e8e8e8), color-stop(.5, transparent)) top left no-repeat, -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#e8e8e8)) bottom left no-repeat, #ffffff;
  background: -webkit-linear-gradient(90deg, #ffffff, #ffffff) top left no-repeat, -webkit-linear-gradient(270deg, #ffffff, #ffffff) bottom left no-repeat, -webkit-linear-gradient(90deg, #e8e8e8, #e8e8e8, rgba(232, 232, 232, 0)) top left no-repeat, -webkit-linear-gradient(270deg, #e8e8e8, #e8e8e8, rgba(232, 232, 232, 0)) bottom left no-repeat, #ffffff;
  background: linear-gradient(0deg, #ffffff, #ffffff) top left no-repeat, linear-gradient(180deg, #ffffff, #ffffff) bottom left no-repeat, linear-gradient(0deg, #e8e8e8, #e8e8e8, rgba(232, 232, 232, 0)) top left no-repeat, linear-gradient(180deg, #e8e8e8, #e8e8e8, rgba(232, 232, 232, 0)) bottom left no-repeat, #ffffff;
  -webkit-background-size: 0 0, 0 0, 0 0, 100% 1px;

  PS:同时可参考该链接:https://zhuanlan.zhihu.com/p/26141351

  • 4.移动端页面左右滑屏问题
     
    <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no">

     

posted @ 2018-08-27 10:42  sunny_fish  阅读(1026)  评论(0编辑  收藏  举报