【问题标题】:Background video does not play on mobile?背景视频不能在手机上播放?
【发布时间】:2015-07-23 12:59:38
【问题描述】:

我制作了一个登陆页面,视频在表单的背景下播放。
它在台式机上运行良好,但我使用 Chrome 在我的 Android 设备上进行了检查,背景视频无法在其上播放。

谁能帮我解决这个问题。

这是我的fiddle的链接。

HTML:

   <p>
<video autoplay="" id="video" loop=""><source src="http://www.mygreencity.in/Enquiry.mp4" type="video/webm" /> <source src="Enquiry.mp4" type="video/mp4" /></video>
</p>  

<form action="" class="form" method="post">


<p><input name="enq_name" placeholder="Full Name" required="" type="text" autocomplete="off" alt="Full Name" title="Full Name"/></p>

<p><input name="enq_mobile" placeholder="Mobile Number" required="" type="number" autocomplete="off" alt="Number" title="Number"/></p>

<p><input name="enq_email" placeholder="Email" required="" type="email" autocomplete="off" alt="Email ID" title="Email ID"/></p>
<input class="button button-block" name="enq_submit" type="submit" value="Go To Site" alt="Go To Site" title="Go To Site"/></form>

CSS:

    *, *:before, *:after {
  box-sizing: border-box;
}

html {
  overflow-y: scroll;
}

body {
  background: #fff;
  font-family: 'Titillium Web', sans-serif;
}

a {
  text-decoration: none;
  color: #1ab188;
  -webkit-transition: .5s ease;
          transition: .5s ease;
}
a:hover {
  color: #179b77;
}

.form {
  background: rgba(19, 35, 47, 0.9);
  padding: 40px;
  max-width: 600px;
  margin: 80px auto;

  border-radius: 4px;
  box-shadow: 0 4px 10px 4px rgba(19, 35, 47, 0.3);
}


h1 {
  text-align: center;
  color: #ffffff;
  font-weight: 300;
  margin: 0 0 40px;
}

label {
  position: absolute;
  -webkit-transform: translateY(6px);
      -ms-transform: translateY(6px);
          transform: translateY(6px);
  left: 13px;
  color: rgba(255, 255, 255, 0.5);
  -webkit-transition: all 0.25s ease;
          transition: all 0.25s ease;
  -webkit-backface-visibility: hidden;
  pointer-events: none;
  font-size: 22px;
}

input, textarea {

  font-size: 22px;
  display: block;
  width: 100%;
  height: 100%;
  padding: 5px 10px;
  background: none;
  background-image: none;
  border: 1px solid #a0b3b0;
  color: #ffffff;
  border-radius: 0;
  -webkit-transition: border-color .25s ease, box-shadow .25s ease;
          transition: border-color .25s ease, box-shadow .25s ease;
}
input:focus, textarea:focus {
  outline: 0;
  border-color: #1ab188;
}

textarea {
  border: 2px solid #a0b3b0;
  resize: vertical;
}


.button {
  border: 0;
  outline: none;
  border-radius: 0;
  padding: 15px 0;
  font-size: 2rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .1em;
  background: #1ab188;
  color: #ffffff;
  -webkit-transition: all 0.5s ease;
          transition: all 0.5s ease;
  -webkit-appearance: none;
}
.button:hover, .button:focus {
  background: #179b77;
}

.button-block {
  display: block;
  width: 100%;
}

.forgot {
  margin-top: -20px;
  text-align: right;
}

p {
margin-bottom: 40px;
}


video { 
    position: fixed;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -100;
    transform: translateX(-50%) translateY(-50%);
  background: #fff;
  background-size: cover;
  transition: 1s opacity;
}

div{
margin:20px;
}

input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { 
  -webkit-appearance: none; 
  margin: 0; 
}

input[type=number] {
-moz-appearance: textfield;
}

【问题讨论】:

  • Chrome for Android 以及大多数移动平台都禁用了自动播放视频。

标签: css html forms video mobile


【解决方案1】:

您的视频元素需要更多属性

<video autoplay loop muted playsinline id="video-background" poster="images/poster.jpg">

Safari 和移动版 Chrome 改变了移动视频的行为方式。默认情况下,它只能在视频静音时自动播放。但是对于 webkit/iOs 你还需要第二个属性; 在线播放。这个属性使它可以内联播放,而不是跳转到全屏视频。

如果您的目标是 iOS 11,请确保您的移动设备未在低功耗模式下运行。如果您使用的是 Android 版 Chrome,流量节省程序模式也会阻止自动播放,因此不会显示视频。反正没有这个。

【讨论】:

  • 谢谢 --- “自动播放循环静音 playinline” 工作
  • 也适合我
  • 对我来说也是如此!谢谢!
  • 你是指出低功耗模式问题的人!谢谢。
【解决方案2】:

CSS:

#section-video video {
   display: block; 
}

在相应的css文件中给出显示块而不是none。

【讨论】:

  • 这是我的解决方案 :)
【解决方案3】:

你应该看看这种jQuery plugin

否则,您应该提供一些.webm.ogv 格式的替代方案,而不是只有.mp4 格式,以便在浏览器和设备上具有更好的兼容性。 您还应该有一个“后备”图像,如以下示例中的poster="videos/poster.png"。如果这些格式都不适用于所使用的浏览器/平台,则会显示此图像而不是视频。

您必须将视频转换.webm.ogv

由于我仍在寻找一个好的转换工具(在转换后没有额外的丑陋横幅),我无法就此给你一些建议。

<video id="bgVideo" autoplay poster="videos/poster.png">
    <source src="http://www.mygreencity.in/Enquiry.mp4" type="video/mp4"/>
    <source src="http://www.mygreencity.in/Enquiry.webm" type="video/webm"/>
    <source src="http://www.mygreencity.in/Enquiry.ogv" type="video/ogg"/>    
</video>

祝你好运

【讨论】:

    猜你喜欢
    • 2016-01-20
    • 2019-09-15
    • 1970-01-01
    • 2022-10-16
    • 1970-01-01
    • 2021-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多