生成AI活用

AIでハンバーガーメニューを作る【CSS+JS生成】

更新日:2026-05-10 著者:unigram 読了目安:3分

この記事の要点

AIでハンバーガーメニューを生成する方法。三本線が×に変化するアニメーションとナビの開閉をCSS+JSで実装。プロンプト例・コード付きで解説します。

スマートフォン表示でよく見るハンバーガーメニュー(三本線のボタン)。クリックするとナビゲーションが開くUIは、AIにお任せで作れます。

方法①:既存のHTMLからCSS・JSを生成する

AIへのプロンプト例

以下のHTMLに対して、
・ハンバーガーボタンのCSS(三本線のデザイン)
・ボタンをクリックするとナビが開閉するJavaScript
・開いたときにボタンが×印に変化するアニメーション
を追加してください。

<header class="site-header">
  <a href="/" class="logo">LOGO</a>
  <button class="burger" aria-label="メニューを開く">
    <span></span>
    <span></span>
    <span></span>
  </button>
  <nav class="global-nav">
    <ul>
      <li><a href="/">ホーム</a></li>
      <li><a href="/about">会社案内</a></li>
      <li><a href="/contact">お問い合わせ</a></li>
    </ul>
  </nav>
</header>

生成されたCSS例

.burger {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
}
.burger span {
  display: block;
  width: 24px;
  height: 2px;
  background: #1a1a1a;
  transition: transform 0.3s, opacity 0.3s;
}
.burger.is-open span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}
.burger.is-open span:nth-child(2) {
  opacity: 0;
}
.burger.is-open span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}
@media (max-width: 768px) {
  .burger { display: flex; }
  .global-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #fff;
    border-top: 1px solid #eee;
    padding: 16px 0;
  }
  .global-nav.is-open { display: block; }
  .global-nav ul { flex-direction: column; }
  .global-nav li a {
    display: block;
    padding: 12px 24px;
  }
}

生成されたJS例

const burger = document.querySelector('.burger');
const nav = document.querySelector('.global-nav');

burger.addEventListener('click', () => {
  const isOpen = burger.classList.toggle('is-open');
  nav.classList.toggle('is-open', isOpen);
  burger.setAttribute('aria-expanded', isOpen);
});

📝 用語メモ

aria-expanded:メニューが開いているかどうかをスクリーンリーダーに伝えるアクセシビリティ属性。true / falseで切り替えます。
@media (max-width: 768px):画面幅が768px以下のとき(主にスマートフォン)に適用するCSSです。

方法②:HTMLとセットで生成する

AIへのプロンプト例

PCではヘッダーナビを横並びに、スマートフォンではハンバーガーメニューで表示する
レスポンシブなヘッダーをHTML・CSS・JavaScriptで作ってください。
ハンバーガーボタンは三本線→×に変化するアニメーションつきで。

ポイント

  • スライドで開くメニューにしたい場合は「開閉をスライドアニメーションにして」と追加で指示できます
  • ナビを閉じる処理(リンクをクリック後に自動で閉じるなど)も同時に依頼しましょう

この記事を書いた人

unigram
web、印刷、映像などの制作をしています。@京都、フリーランス18年目。 大学で講師もしています。 自身の備忘録も兼ねて、Web制作・WordPress・SEO・GA4・生成AI活用をテーマに情報発信しています。わかりやすく優しい内容で記事作成を心がけています。