また、要素をクリックするとアニメーションで
パカパカアコーディオンになるようにしましょう。
見本を参考に作成してください。

解答ソースコード
<section>
<input class="checkbox-input" type="checkbox" id="checkBox">
<label class="checkbox-label" for="checkBox">ここを押下するとアコーディオンが開きます</label>
<ul class="accordion-cat">
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
</ul>
<input class="checkbox-input" type="checkbox" id="checkBox2">
<label class="checkbox-label checkbox-label--red" for="checkBox2">ここを押下するとアコーディオンが開きます</label>
<ul class="accordion-cat">
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
</ul>
<input class="checkbox-input" type="checkbox" id="checkBox3">
<label class="checkbox-label checkbox-label--green" for="checkBox3">ここを押下するとアコーディオンが開きます</label>
<ul class="accordion-cat">
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
<li>アコーディオンの内容が入ります。</li>
</ul>
</section>
¥HTML¥
section {
display: inline-block;
}
.checkbox-input {
display: none;
}
.checkbox-label {
cursor: pointer;
display: inline-block;
padding: 16px;
background-color: #0e6edf;
color: #fff;
}
.checkbox-label--red {
background-color: red;
}
.checkbox-label--green {
background-color: green;
}
.checkbox-label::before {
content: "▼";
padding-right: 4px;
}
.checkbox-input:checked + .checkbox-label::before {
content: "ー";
}
.accordion-cat {
margin: 0 0 2px 0;
}
.accordion-cat li {
max-height: 0;
overflow-y: hidden;
transition: all 0.5s;
text-align: center;
}
.checkbox-input:checked + .checkbox-label + .accordion-cat > li {
max-height: 46px;
opacity: 1;
padding: 10px;
visibility: visible;
}
¥CSS¥
甲賀
なら実務レベルで使えるスキルを
体系的に学ぶことが可能です
Web制作学習は、決して楽ではありませんが
「正しい方向で」「コツコツ」と続ければ、
必ずスキルアップする事が可能です。
甲賀では、挫折せずに学習を継続するための
カリキュラム・サポート体制をご用意しています。
↓↓↓↓
ステップバイステップで
着実にスキルが身につくカリキュラム
-
step 01
初心者でもよく分かる!
Web制作の基礎の基礎1.知っておこうWeb制作に関する基礎知識の話
2.HTMLの書き方や役割を基礎から学ぶマークアップ入門
3.CSSで挫折しない為の基礎学習【超重要プロパティ】
4.基礎を終えたらHTMLコーディングを鍛えよう(デザインから)
5.初心者向けHTMLコーディング完全解説(STEP1総まとめ)
-
step 02
真似して覚えるWeb制作
(デザイン〜プログラミングまで)1.属性ってなに?などなどHTML,CSSの深堀り編
2.デザイナーから直接学ぶ猫ちゃんサイトのデザイン解説
3.鎧模写-YOROIMOSYA【銅の鎧】
4.JavaScriptで学ぶプログラミングの基本のきほん【16項目】
-
step 03
動きをつけたり、効率化!
脱初心者を目指すためのスキルを学ぼう1.jQueryの基本的な使い方から応用まで【プラグイン解説あり】
2.Web制作でCSSを簡単に書くためのSASS入門【小技あり】
3.現場で使うCSS設計の考え方参考サイトを元に解説
4.生のJavaScriptだけで英単語アプリを作ろう(音声読み上げ付き)
-
step 04
ここまでくれば中級者!
ちょこっと応用編のWeb制作1.JavaScriptの屋敷【鳳凰の間】
2.JavaScriptで作るLINE風チャットボット
3.コマンドラインとアプリ操作を同時に学べるGit【15選】
4.EJSを使いコーディング力を中級者まで引き上げる
-
step 05
実務で必須の制作スキル
WordPressについて学ぶ1.鎧模写-YOROIMOSYA【銀の鎧】
2.PHPを基礎から学びたい人向け14項目から学ぶ【入門】
3.PHPで簡易的な掲示板を作ってみよう【コーディングあり】
4.甘えを吹き飛ばす!WordPress開発
5.WordPressで¥400,000の案件を徹底解説!
6.WordPress有料テーマSnow Monkeyの解体書
解説
チェックボックスを使用するということです。
inputがcheckdの時にコンテンツを出すといたって単純なことをやっております。
まず、inputとlabelを連動する為にはinputのid属性とlabelのfor属性を同じ名前にします。
その際にinputのチェックボックスは、display: none;で消しときましょう。
そして、開いた時のコンテンツにはデフォルト値として
max-height: 0;とoverflow-y: hidden;を付与しておきます。
こうしておく事で、視認できなくなり要素は隠れます。
そして、セレクタを上手く使用してinputにcheckdがついたら隠しておいた要素に高さをつけ見えるようにします。アニメーションについては、隠す要素のデフォルト値にtransition: all 0.5s;などすれば、アニメーションできます。