web-dev-qa-db-ja.com

BootstrapカルーセルとレスポンシブHTML5ビデオ?

動画でカルーセルを作ろうとしています。画像が正常に機能することで、モバイルビューでも画像が反応します。しかし、ビデオでは幅は反応しますが高さは反応しません。基本的には、カルーセル画像を使用して、ビデオを使用して同じ比率を達成したいと考えています。私は多くのトリックをオンラインで試しましたが、誰もそれをしていません。私のビデオは1024/552pxです

バイオリンでベストを尽くしました。小さな幅でフィドルをロードすると、同じ高さを維持し、反応が悪くなりますが、カルーセル/ビデオの幅は変わります(ただし、ビデオの端がトリミングされます)。画像と同じ比率ではありません。ご覧のとおり、2番目のスライドに画像を含めて、私の問題をさらに詳しく示しています。

https://jsfiddle.net/687bsb21/1/

これがコードです:

<div id="carousel-example-generic" class="carousel slide" data-ride="carousel">
 <ol class="carousel-indicators">
        <li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li>
  <li data-target="#carousel-example-generic" data-slide-to="1"></li>
      </ol>

      <!-- Wrapper for slides -->
      <div class="carousel-inner" role="listbox">            

        <div class="item active">
             <div align="center">
               <video autoplay loop>
                 <source src="http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4" width="1024" height="552" type="video/mp4">
                 Your browser does not support the video tag.
              </video>
          </div>
             <div class="carousel-caption">
              <h3>hello</h3>
              <p>hello</p>
            </div>
          </div> 
            <div class="item">
          <img src="http://dummyimage.com/1024x552/000/fff" class="img-responsive" alt="asfds">
          <div class="carousel-caption">
              <h3>hello</h3>
              <p>hello.</p>
            </div>
        </div>
          <a class="left carousel-control" href="#carouselHelp" role="button" data-slide="prev">
        <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
        <span class="sr-only">Previous</span>
      </a>
      <a class="right carousel-control" href="#carouselHelp" role="button" data-slide="next">
        <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
        <span class="sr-only">Next</span>
      </a>
</div>

助けてくれてありがとう。

7
Paperbag Writer

あなたのCSSを追加し、

video{
width:100%
}
3
Logz

これが最良の解決策です。

<div class="container">
  <video><source src="video.mp4" type="video/mp4"></video>
</div>

.container{
  position: relative;
  width: 100%
}
.container video{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);                            
}
0

幅/高さをタグに直接追加することもできます:

<video autoplay loop width="1024" height="552">

よろしく。

0
WongFaiHung