アニメーション付きアコーディオンの作り方【HTML/CSS/JavaScript・サンプルコード付き】

アコーディオン

アニメーション付きアコーディオンの作り方

HTML・CSS・JavaScriptを使って、開閉時にアニメーションが付いたアコーディオンを作る方法を紹介します。このサンプルでは、見出しをクリックするとコンテンツが滑らかにアニメーションしながら開閉します。FAQ、ヘルプページ、商品説明、設定画面など、見た目をより分かりやすくし、自然な操作感を実現したい場合に便利です。

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

デモ

アニメーション付きアコーディオン

見出しをクリックすると、内容がなめらかにアニメーションしながら開閉します。

クリックした項目の内容を、アニメーション付きで開閉できるUIです。
FAQ、説明文、設定項目などを自然な動きで表示したい場合に使えます。
HTML、CSS、JavaScriptの3つのファイルで作成できます。

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

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

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

  <!-- 画面幅に合わせて表示 -->
  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <!-- ページタイトル -->
  <title>アニメーション付きアコーディオン</title>

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

</head>
<body>

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

    <!-- タイトル -->
    <div class="animated-accordion_title">
      アニメーション付きアコーディオン
    </div>

    <!-- 説明文 -->
    <p class="animated-accordion_text">
      見出しをクリックすると、内容がなめらかにアニメーションしながら開閉します。
    </p>

    <!-- アニメーション速度の調整場所を説明 -->
    <p class="animated-accordion_text">
      動きを調整したい場合は、CSSの transition の秒数を変更します。
    </p>

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

      <button class="animated-accordion_button" type="button">
        アコーディオンとは?
      </button>

      <div class="animated-accordion_content">
        クリックした項目の内容を、アニメーション付きで開閉できるUIです。
      </div>

    </div>

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

      <button class="animated-accordion_button" type="button">
        どんな場面で使う?
      </button>

      <div class="animated-accordion_content">
        FAQ、説明文、設定項目などを自然な動きで表示したい場合に使えます。
      </div>

    </div>

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

      <button class="animated-accordion_button" type="button">
        必要なファイルは?
      </button>

      <div class="animated-accordion_content">
        HTML、CSS、JavaScriptの3つのファイルで作成できます。
      </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 をブラウザで開くと、アニメーション付きのアコーディオンを確認できます。開閉の速さを変更したい場合は、style.css 内の transition の秒数を調整してください。


コメント