【HTML】YouTube動画を埋め込む方法
基本的な埋め込み(iframe)
YouTubeの動画をHTMLに埋め込む最も簡単な方法は、<iframe>
タグを使う方法です。
埋め込みコードはYouTubeの動画ページで「共有」→「埋め込む」から取得できます。
<iframe width="560" height="315" src="https://www.youtube.com/embed/動画ID" frameborder="0" allowfullscreen></iframe>
例えば、次のように記述すると動画が表示されます。
埋め込みオプションのカスタマイズ
埋め込み動画のURLにパラメータを追加すると、さまざまなカスタマイズができます。
自動再生(autoplay)
動画を自動で再生したい場合、URLの末尾に?autoplay=1
を追加します。
<iframe width="560" height="315" src="https://www.youtube.com/embed/動画ID?autoplay=1" frameborder="0" allowfullscreen></iframe>
ループ再生(loop)
ループ再生を有効にするには、loop=1
とplaylist=動画ID
を追加します。
<iframe width="560" height="315" src="https://www.youtube.com/embed/動画ID?loop=1&playlist=動画ID" frameborder="0" allowfullscreen></iframe>
ミュート再生(mute)
ミュートで動画を再生する場合は、mute=1
を追加します。
<iframe width="560" height="315" src="https://www.youtube.com/embed/動画ID?mute=1" frameborder="0" allowfullscreen></iframe>
関連動画を非表示
再生終了後に関連動画を表示しないようにするには、rel=0
を追加します。
<iframe width="560" height="315" src="https://www.youtube.com/embed/動画ID?rel=0" frameborder="0" allowfullscreen></iframe>
レスポンシブ対応の埋め込み
スマートフォンやタブレットでも綺麗に表示されるようにするには、<div>
を使ってpadding-bottom
を調整する方法が一般的です。
<div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;"> <iframe src="https://www.youtube.com/embed/動画ID" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;" frameborder="0" allowfullscreen> </iframe> </div>
これにより、どの画面サイズでも動画のアスペクト比(16:9)を維持できます。
iframeを使わない埋め込み方法
JavaScriptを使用して、iframeを使わずにYouTube動画を埋め込むことも可能です。
<div id="video-container"></div> <script> var videoId = "動画ID"; var container = document.getElementById("video-container"); var videoElement = document.createElement("video"); videoElement.src = "https://www.youtube.com/embed/" + videoId; videoElement.controls = true; container.appendChild(videoElement); </script>
この方法はブラウザによって動作しない場合がありますが、特定の要件に応じて活用できます。
YouTube APIを使った埋め込み
YouTube Player APIを利用すると、動画の再生や一時停止、音量調整などをJavaScriptで制御できます。
基本的なAPIの利用
まず、YouTube APIを読み込みます。
<script src="https://www.youtube.com/iframe_api"></script>
次に、動画プレイヤーを初期化するスクリプトを追加します。
<div id="player"></div> <script> var player; function onYouTubeIframeAPIReady() { player = new YT.Player('player', { height: '315', width: '560', videoId: '動画ID', events: { 'onReady': onPlayerReady } }); } function onPlayerReady(event) { event.target.playVideo(); } </script>
この方法を使うと、JavaScriptで動画を操作できるようになります。
APIを使った動画操作
例えば、次のようにボタンを追加して動画を再生・停止できます。
<button onclick="player.playVideo()">再生</button> <button onclick="player.pauseVideo()">一時停止</button> <button onclick="player.stopVideo()">停止</button>
このように、YouTube APIを利用すると、より柔軟な動画コントロールが可能になります。