前提・実現したいこと
以下のような階層構造を作成しようとしています。
Aボタンを押すとB・Cが現れ、B・Cボタンを押すと、それぞれB’・B"、C’・C"が現れるようなプログラムを作ろうとしています。
Aを押すと、Bが増殖するコードは以下のようにできますが、画像のようにはうまくできません。
コード
HTML
1<!DOCTYPE html> 2<html> 3<head><meta charset="utf-8"> 4<link rel="stylesheet"type="text/css"href="design.css"> 5 <title>clicktest</title> 6</head> 7 8 9<body> 10<div class="hidden_box"> 11 <label for="label1">A</label> 12 <input type="checkbox" id="label1"/> 13 <div class="hidden_show"> 14 15 <p> 16 17 <div class="hidden_box"> 18 <label for="label12">B</label> 19 <input type="checkbox" id="label12"/> 20 <div class="hidden_show"> 21 22 <div class="hidden_box"> 23 <label for="label13">B'</label> 24 <input type="checkbox" id="label13"/> 25 <div class="hidden_show"> 26 27 </p> 28 29 30 </div> 31</div> 32 <br> 33 34 </body> 35</html> 36
CSS
1.hidden_box { 2 margin: 2em 0; 3 padding: 0; 4} 5 6 7.hidden_box label { 8 padding: 15px; 9 font-weight: bold; 10 border: solid 2px black; 11 cursor :pointer; 12} 13 14 15.hidden_box label:hover { 16 background: #efefef; 17} 18 19 20.hidden_box input { 21 display: none; 22} 23 24 25.hidden_box .hidden_show { 26 height: 0; 27 padding: 0; 28 overflow: hidden; 29 opacity: 0; 30 transition: 0.8s; 31} 32 33 34.hidden_box input:checked ~ .hidden_show { 35 padding: 10px 0; 36 height: auto; 37 opacity: 1; 38}
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー