YouTube動画をアコーディオンで表示する方法【HTML/CSS/JavaScript・サンプルコード付き】

html/css/js

YouTube動画をアコーディオンで表示する方法

HTML・CSS・JavaScriptを使って、YouTube動画をアコーディオン内で再生する方法を紹介します。このサンプルでは、見出しをクリックするとアコーディオンが展開され、その中でYouTube動画を再生できます。動画紹介ページや商品説明、チュートリアル、ポートフォリオ、サービス紹介などに利用できます。

コードについて 本記事のコードはサンプルコードです。ご利用前に必ず動作確認を行ってください。
免責事項 本コードの利用により発生した損害について、当サイトは一切の責任を負いません。

デモ

YouTube動画をアコーディオンで表示

見出しをクリックすると、YouTube動画を表示できます。

コードをコピーして使おう!

<!DOCTYPE html>
<html lang="ja">
<head>

  <!-- 文字コードを指定 -->
  <meta charset="UTF-8">

  <!-- スマホ表示に対応 -->
  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <!-- ページタイトル -->
  <title>YouTube動画をアコーディオンで表示</title>

  <!-- CSSファイルを読み込み -->
  <link rel="stylesheet" href="style.css">

</head>
<body>

  <!-- デモ全体を囲むエリア -->
  <div class="youtube-accordion_wrap">

    <!-- タイトル -->
    <div class="youtube-accordion_title">
      YouTube動画をアコーディオンで表示
    </div>

    <!-- 説明文 -->
    <p class="youtube-accordion_text">
      見出しをクリックすると、YouTube動画を表示できます。
    </p>

    <!-- アコーディオン項目 -->
    <div class="youtube-accordion_item">

      <!-- 開閉ボタン -->
      <button class="youtube-accordion_button" type="button">
        YouTube動画を表示
      </button>

      <!-- コンテンツ -->
      <div class="youtube-accordion_content">

        <div class="youtube-accordion_video">

          <!--
            表示するYouTube動画は下記の src を変更

            例:
            
https://youtube.com/watch?v=xxxxxxxxxxx --> <iframe src="https://www.youtube.com/embed/FvFlVUeet0w" title="YouTube video" allowfullscreen> </iframe> </div> </div> </div> </div> <!-- JavaScriptファイルを読み込み --> <script src="script.js"></script> </body> </html>

ファイル構成と設置方法

このサンプルでは、HTML・CSS・JavaScriptをそれぞれ別ファイルに分けて使用します。index.htmlstyle.cssscript.js を同じフォルダに配置してください。

sample/
├── index.html
├── style.css
└── script.js
  

index.html をブラウザで開くと、YouTube動画をアコーディオン内に表示できます。表示する動画を変更したい場合は、HTML内の iframesrc 属性を変更してください。

YouTube動画のURLは、YouTubeで表示したい動画を開き、「共有」ボタンからコピーできます。コピーしたURLが https://youtu.be/FvFlVUeet0w の形式の場合は、末尾の動画IDを使って、次のように埋め込み用URLへ変更します。

https://www.youtube.com/embed/FvFlVUeet0w
  

コメント