[CSS]動画を背景として表示させ、オーバーレイでコンテンツを配置するテクニック
Post on:2014年6月13日
sponsorsr
動画をブラウザいっぱいに背景として表示させ、その上にコンテンツをオーバーレイで配置するテクニックを紹介します。

Create Fullscreen HTML5 Page Background Video
デモ
デモはvideo要素に対応したモダンブラウザでご覧ください、IEは9+で、IE8だと動画が画像に変更して表示されます。

コンテンツを配置した右のパネルは、動画が透けて見えています。
CodePenにもデモがあり、こちらではオンラインでコードを編集することもできます。

実装
HTML
現在、動画ファイルは二つのフォーマットを用意するのがよいでしょう。WebMはGoogleが推奨するものでChrome, Firefox, Operaでネイティブにサポートされています。
<video autoplay loop poster="polina.jpg" id="bgvid"> <source src="polina.webm" type="video/webm"> <source src="polina.mp4" type="video/mp4"> </video>
オーバーレイで表示するコンテンツは、通常通りの実装です。
<div class="overlay"> コンテンツ </div>
CSS
まずは、動画をフルスクリーンで表示するように指定し、z-indexは-100にします。あとはvideoをサポートしていないIE8用に、動画の代替として画像を表示させます。
video#bgvid {
  position: fixed; right: 0; bottom: 0;
  min-width: 100%; min-height: 100%;
  width: auto; height: auto; z-index: -100;
  background: url(polina.jpg) no-repeat;
  background-size: cover;
}
IE8対策
IE8用に背景画像をセットしておくだけでは不十分です。videoタグをブロック要素として扱うように設定します。
<head>
<!--[if lt IE 9]>
<script>
  document.createElement('video');
</script>
<![endif]-->
<style>
  video { display: block; }
</style>
</head>
sponsors















