サイトのファーストビューに動画を埋め込んでみる

2023.10.31 09:00
2023.10.31 17:15
サイトのファーストビューに動画を埋め込んでみる

前回の続きということでファーストビュー関連です。おしゃれなサイトのファーストビューのバックに動画が流れているのをよく見ます。ちなみにこんな感じです。

https://www.aozoramokuzai.com/
https://n-oyanagi.com/holostruction/

かっこいいですね。ファーストビューの背景を動画にするって感じですね。
ということでやってみます。

1. 組み込み

こんな感じにしてみましょう。

ファーストビューの背景に動画を流し、その上にタイトルを載せました。
コードはこんな感じです。

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="style.css" type="text/css" media="all" />
</head>
<body>
  <div class="container">
    <div class="mainvisual">
      <video id="video" class="video" poster="./movie.jpg" loop muted autoplay webkit-playsinline playsinline >
        <source src="./movie.mp4" type="video/mp4">
        <source src="./movie.ogv" type="video/ogv">
        <source src="./movie.webm" type="video/webm">
        <div>動画を再生できません</div>
      </video>
      <div class="contents">
        <div class="title">ファーストビュー</div>
      </div>
    </div>
  </div>
</body>
</html>
html, body {
  margin: 0;
  padding: 0;
}

.container {
  display: flex;
  align-items: center;
  justify-content: center;
}
.mainvisual {
  position: relative;
  width: 700px;
}
.video {
  width: 100%;
}
.contents {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.title {
  background-color: #fff;
  color: #000;
  display: inline-block;
  padding: 20px;
}

videoタグの指定ですが、それぞれこんな意味のようです。

  • poster:動画ファイルが利用できない場合に表示される画像
  • autoplay:動画を自動再生させる
  • muted:ミュート
  • controls:コントロール表示
  • loop:動画ループオンオフ
  • webkit-playsinline:iOS9でのSafari用動画
  • playsinline:iOS10でのSafari用動画

また、動画ファイルをコーデック環境に合わせて3種類用意しています。
mp4とogvとwebmです。それぞれ3〜4MBくらいが限界でしょうかね。

これで無事動きました。
https://tech.exeweb.net/sample/3178/

いい感じですね。

今回は以上です!