FAQ アコーディオンセクション
このパーツは、質問をクリックすると答えが開閉するアコーディオン式のFAQです。質問は button 要素で作られ、 aria-expanded 属性で開いているか閉じているかを示します。マークアップには dl dt dd (説明リスト)を使い、質問と回答の対応関係を意味的に正しく表現しているのが特徴です。
このパーツの使いどころと実装ポイント
このパーツは、質問をクリックすると答えが開閉するアコーディオン式のFAQです。質問は button 要素で作られ、aria-expanded 属性で開いているか閉じているかを示します。マークアップには dldtdd(説明リスト)を使い、質問と回答の対応関係を意味的に正しく表現しているのが特徴です。アイコンは開閉に合わせて回転します。
向いている場面
問い合わせを減らしたいサービス紹介ページや料金ページに向きます。たとえば「費用は?」「契約期間は?」といった定番の疑問が多い、Web制作・コンサル・サブスク・教室系のサイトで効果を発揮します。
カスタマイズと注意点
質問と回答のセットを増やすときは、button と回答の dd をひとまとめにして複製します。複数同時に開ける作りなので、関連する質問を並べやすいのも利点です。
- キーボードだけでも開閉できるよう
buttonを使っており、アクセシビリティに配慮しています - 回答内のリンクや改行は自由に入れられますが、長すぎる回答は読みにくいので簡潔にまとめましょう
このパーツは JavaScript が含まれます。HTML の最後に <script> タグで読み込むか、外部 JS ファイルに切り出してください。
よくある質問
複数の質問を同時に開いたままにできますか?
できます。このアコーディオンは1つ開くと他が閉じる排他制御ではなく、開いた質問をそのまま残せる作りです。利用者が複数の回答を見比べたいときに便利です。1つだけ開く方式にしたい場合はJSの調整が必要です。
回答の文章を画像や箇条書きにしても大丈夫ですか?
大丈夫です。回答部分は通常のHTMLを入れられるので、箇条書きやリンク、補足の段落などを自由に追加できます。ただし高さが変わると開閉アニメーションがやや不自然になる場合があるため、内容量に応じて確認してください。