CSS だけでアコーディオンを実装しました (Lightning 無料版)
こんにちは、魚沼情報サービスの対馬です。
先日、以下の記事で Lightning 無料版でアコーディオンを実装するやり方を紹介しました。
上記の記事では JavaScript を使うやり方を紹介していますが、今回は JavaScript を使わずに CSS だけでアコーディオンを作るやり方を紹介します。
手順① グループブロックに カスタム HTML とグループを入れる
ブロックを組みあわせて、以下のように作ります。赤字で示したものはグループブロックに割り当てる 追加 CSS クラス です。

手順② カスタム HTML ブロック
カスタム HTML ブロックに以下のように入力します。
<input type="checkbox" id="accordion-check">
<label for="accordion-check" class="css-accordion-title">
クリックして、CSS だけでアコーディオンを作る方法を見る
<span class="fa-icon"></span>
</label>
手順③ CSS
以下の CSS を追加します。
.css-accordion {
border: 1px solid var(--vk-color-border);
border-radius: calc(var(--vk-size-text)*0.5);
margin-bottom: 2.0em;
}
.css-accordion-title {
display: block;
pointer-events: all;
cursor: pointer;
position: relative;
padding-top: calc(var(--vk-size-text)*1);
padding-right: calc(var(--vk-size-text)*2);
padding-bottom: calc(var(--vk-size-text)*1);
padding-left: calc(var(--vk-size-text)*1);
border-radius: calc(var(--vk-size-text)*0.5) calc(var(--vk-size-text)*0.5) 0 0;
background-color: rgba(0,0,0,.05);
margin-bottom: 0;
margin-block-start: 0 !important;
}
.css-accordion input[type=checkbox] {
display: none;
}
.css-accordion input ~ .css-accordion-content {
max-height: 0;
padding-right: calc(var(--vk-size-text)*1);
padding-left: calc(var(--vk-size-text)*1);
overflow: hidden;
transition: all 0.3s ease-in;
margin-block-start: 0 !important;
}
.css-accordion input:checked ~ .css-accordion-content {
max-height: 9999px;
padding-top: calc(var(--vk-size-text)*2);
padding-bottom: calc(var(--vk-size-text)*2);
}
.css-accordion span.fa-icon::before {
display: block;
font-family: "Font Awesome 6 Free";
font-weight: bold;
position: absolute;
top: calc(var(--vk-size-text)*1);
right: 10px;
content: "\f055";
font-size: 1.5em;
color: #666666;
}
.css-accordion input:checked + label span.fa-icon::before {
content: "\f056";
}
2022.1.26 機能追加 アコーディオンの開閉に合わせて Font Awesome アイコンを切り替えるようにしました。
2022.12.2 CSS 調整 Lightning 15.1.3 にアップデートして theme.json を有効化したことにより必要になった CSS の調整を行いました。
2022.12.2 CSS 調整 アイコン部分をクリックしてもアコーディオンが開くようにしました。
2023.1.4 CSS 調整 アコーディオン上下の不要な余白が表示されないようにしました。これも theme.json 有効化の影響のようで、以下の CSS の影響を受けています。
body .is-layout-flow > * + * {
margin-block-start: 24px;
}
補足 同一ページで複数のアコーディオンを使うには
このままだとひとつのページにひとつのアコーディオンしか使えません。
2つめ以降のアコーディオンは、カスタム HTML ブロック内の label と input の accordion-check の部分を accordion-check-2, accordion-check-3 ... のように別のものに書き換えればオッケーです。
この手のカスタマイズがお好きな方はご参考にどうぞ。そうでない方におすすめなのが Lightning G3 Pro Pack !!
G3 Pro Pack を買えば、手間をかけなくてもアコーディオンブロックを含む超便利なブロックをたくさん使えるんです (^^♪


投稿者プロフィール

- 魚沼情報サービス (新潟県南魚沼市)
-
WordPress を使用したサイト制作・カスタマイズを全国どこからでも承ります。ベクトルが販売している WordPress テーマ「Lightning」「Katawara」および同社のプラグイン「VK Blocks」「VK Filter Search」のカスタマイズを得意としています。遠方からのご依頼の場合、打ち合わせ・サポートを Zoom や電子メール・電話などを併用して行わせていただきます。
オンラインレッスン形式でのホームページ制作サポートも行っています。お客様ご自身でホームページを開設・運用する上で、うまくいかない部分をサポートいたします。設定やカスタマイズを手伝ってもらいたい、同時に便利な使い方や設定方法、カスタマイズのやり方も知ることができたら...という方にご好評いただいています。
このサイトで行っているカスタマイズのやり方の多くもマンツーマンのオンラインレッスン形式などでわかりやすく説明させていただくことができますので、興味がある方はご連絡ください。
* ドメインやサーバーの契約・申込み
* WordPress やテーマ、プラグインのインストール
* アクションフック・フィルターフック・jQuery・CSS によるカスタマイズ
* ドメインの移管・移転
* 日常の更新作業
なども含めて、サイトの制作・運用全般をお手伝いできます。
ご要望をうかがった上で費用見積り(無料)を提示させていただきますので、お気軽にお問い合わせください。
» ご相談・お問い合わせはこちらからどうぞ
最新の投稿
Lightning G32023.03.19ヘッダーに電話番号とボタンを追加したカスタマイズ例③
VK Blocks2023.03.16ステキな新機能が追加されました!! - VK Blocks スライダーブロック
Lightning G32023.03.12ヘッダーに電話番号とボタンを追加したカスタマイズ例②
VK Blocks2023.03.11スライダーブロックを使ったカルーセルバナーの作成例 - VK Blocks
今よりもっといい WordPress サイトにしたいなら Vektor Passport がおすすめ
名前に Pro がついているので「制作のプロ向け製品」という印象を受けるかもしれませんが、
*もっといいサイトにしたい
* 効率よく作成・運用・管理をしたい
と考えているコーポレートサイトの担当者にこそ使っていただく価値がある製品です。
Lightning G3 Pro Unit / VK Blocks Pro は Vektor Passport というライセンス製品で販売されています(個々の単体販売はされていません)。これらのプラグインを使うと、便利なカスタマイズ機能やリッチなコンテンツ制作に役立つブロックをたくさん利用できるようになりますので、効率的にサイトを制作・運用したい方はぜひお使いになることをおすすめします。