質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

1回答

792閲覧

ラジオボタンで表示・非表示を切り替えるようにしたいが一部ボタンを選択時に表示されない

futaba2110

総合スコア16

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2019/08/15 08:51

前提・実現したいこと

HTMLとCSSのみでWordPress上でタブで表示・非表示を切り替えれるテーブルを作っています。
タブの中にさらにラジオボタンで複数の表を切り替えられるようにしたいです。
【作りたいもの】こちらのサイトのランキングにあるようなものです
【参考サイト】こちらを参考に作っています

###問題
1.inputでcheckedを入れたラジオボタンが最初にチェックされない
2.ボタンID 1−c,2-a,2-c,3-aの中身が表示されない

ソースコード

HTML

1<div class="tabs"> 2 <input id="tab1" type="radio" name="tab_item" checked> 3 <label class="tab_item item3" for="tab1">総合</label> 4 5 <input id="tab2" type="radio" name="tab_item"> 6 <label class="tab_item item3" for="tab2">人気</label> 7 8 <input id="tab3" type="radio" name="tab_item"> 9 <label class="tab_item item3" for="tab3">安い</label> 10 11 <div class="tab_content" id="tab1_content"> 12 <div class="tab_content_description"> 13 14 <div class="intab"> 15 <input id="intab1_a" type="radio" name="intab_item" checked> 16 <label class="intab_item" for="intab1_a">総合1</label> 17 18 <input id="intab1_b" type="radio" name="intab_item"> 19 <label class="intab_item" for="intab1_b">おいしさ1</label> 20 21 <input id="intab1_c" type="radio" name="intab_item"> 22 <label class="intab_item" for="intab1_c">安さ1</label> 23 24 <div class="intab_content" id="intab1_a_content"> 25 <div class="intab_content_description"> 26 <table style="width: 100%;"> 27 <tbody> 28 <tr> 29 <td>1位</td> 30 <td>うまい水</td> 31 </tr> 32 <tr> 33 <td>2位</td> 34 <td>すごい水</td> 35 </tr> 36 </tbody> 37 </table> 38 </div> 39 </div> 40 41 <div class="intab_content" id="intab1_b_content"> 42 <div class="intab_content_description"> 43 <table style="width: 100%;"> 44 <tbody> 45 <tr> 46 <td>1位</td> 47 <td>もっとうまい水</td> 48 </tr> 49 <tr> 50 <td>2位</td> 51 <td>もっとすごい水</td> 52 </tr> 53 </tbody> 54 </table> 55 </div> 56 </div> 57 58 <div class="intab_content" id="intab1_c_content"> 59 <div class="intab_content_description"> 60 <table style="width: 100%;"> 61 <tbody> 62 <tr> 63 <td>1位</td> 64 <td>とてもうまい水</td> 65 </tr> 66 <tr> 67 <td>2位</td> 68 <td>とてもすごい水</td> 69 </tr> 70 </tbody> 71 </table> 72 </div> 73 </div> 74 </div> 75 76 </div> 77 </div> 78 <div class="tab_content" id="tab2_content"> 79 <div class="tab_content_description"> 80 81 <div class="intab"> 82 <input id="intab2_a" type="radio" name="intab_item" checked> 83 <label class="intab_item" for="intab2_a">総合2</label> 84 85 <input id="intab2_b" type="radio" name="intab_item"> 86 <label class="intab_item" for="intab2_b">おいしさ2</label> 87 88 <input id="intab2_c" type="radio" name="intab_item"> 89 <label class="intab_item" for="intab2_c">安さ2</label> 90 91 <div class="intab_content" id="intab2_a_content"> 92 <div class="intab_content_description"> 93 <table style="width: 100%;"> 94 <tbody> 95 <tr> 96 <td>1位</td> 97 <td>うまい水</td> 98 </tr> 99 <tr> 100 <td>2位</td> 101 <td>すごい水</td> 102 </tr> 103 </tbody> 104 </table> 105 </div> 106 </div> 107 108 <div class="intab_content" id="intab2_b_content"> 109 <div class="intab_content_description"> 110 <table style="width: 100%;"> 111 <tbody> 112 <tr> 113 <td>1位</td> 114 <td>もっとうまい水</td> 115 </tr> 116 <tr> 117 <td>2位</td> 118 <td>もっとすごい水</td> 119 </tr> 120 <tr> 121 </tbody> 122 </table> 123 </div> 124 </div> 125 126 <div class="intab_content" id="intab2_c_content"> 127 <div class="intab_content_description"> 128 <table style="width: 100%;"> 129 <tbody> 130 <tr> 131 <td>1位</td> 132 <td>とてもうまい水</td> 133 </tr> 134 <tr> 135 <td>2位</td> 136 <td>とてもすごい水</td> 137 </tr> 138 </tbody> 139 </table> 140 </div> 141 </div> 142 </div> 143 </div> 144 </div> 145 <div class="tab_content" id="tab3_content"> 146 <div class="tab_content_description"> 147 148 149 <div class="intab"> 150 <input id="intab3_a" type="radio" name="intab_item" checked> 151 <label class="intab_item" for="intab3_a">総合3</label> 152 153 <input id="intab3_b" type="radio" name="intab_item"> 154 <label class="intab_item" for="intab3_b">おいしさ3</label> 155 156 <input id="intab3_c" type="radio" name="intab_item"> 157 <label class="intab_item" for="intab3_c">安さ3</label> 158 159 <div class="intab_content" id="intab3_a_content"> 160 <div class="intab_content_description"> 161 <table style="width: 100%;"> 162 <tbody> 163 <tr> 164 <td>1位</td> 165 <td>うまい水</td> 166 </tr> 167 <tr> 168 <td>2位</td> 169 <td>すごい水</td> 170 </tr> 171 </tbody> 172 </table> 173 </div> 174 </div> 175 <div class="intab_content" id="intab3_b_content"> 176 <div class="intab_content_description"> 177 <table style="width: 100%;"> 178 <tbody> 179 <tr> 180 <td>1位</td> 181 <td>もっとうまい水</td> 182 </tr> 183 <tr> 184 <td>2位</td> 185 <td>もっとすごい水</td> 186 </tr> 187 </tbody> 188 </table> 189 </div> 190 </div> 191 <div class="intab_content" id="intab3_c_content"> 192 <div class="intab_content_description"> 193 <table style="width: 100%;"> 194 <tbody> 195 <tr> 196 <td>1位</td> 197 <td>とてもうまい水</td> 198 </tr> 199 <tr> 200 <td>2位</td> 201 <td>とてもすごい水</td> 202 </tr> 203 </tbody> 204 </table> 205 </div> 206 </div> 207 </div> 208 </div> 209 </div> 210</div> 211 212

CSS

1/*タブ切り替え全体のスタイル*/ 2.tabs { 3 margin-top: 50px; 4 padding-bottom: 40px; 5 background-color: #fff; 6 border:solid 1px #e3e3e3; 7 width: 100%; 8  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); 9 margin: 0 auto; 10} 11 12/*タブのスタイル*/ 13.tab_item { 14 height: 50px; 15 border-bottom: 3px solid #5ab4bd; 16 background-color: #d9d9d9; 17 line-height: 50px; 18 font-size: 16px; 19 text-align: center; 20 color: #565656; 21 display: block; 22 float: left; 23 text-align: center; 24 font-weight: bold; 25 transition: all 0.2s ease; 26} 27.tab_item:hover { 28 opacity: 0.75; 29} 30.item1 { 31 width: 100%; 32} 33.item2 { 34 width: calc(100%/2); 35} 36.item3 { 37 width: calc(100%/3); 38} 39.item4 { 40 width: calc(100%/3); 41} 42 43/*ラジオボタンを全て消す*/ 44input[name="tab_item"] { 45 display: none; 46} 47 48/*タブ切り替えの中身のスタイル*/ 49.tab_content { 50 display: none; 51 padding: 5px 5px 0; 52 clear: both; 53 overflow: hidden; 54} 55 56 57/*選択されているタブのコンテンツのみを表示*/ 58#tab1:checked ~ #tab1_content, 59#tab2:checked ~ #tab2_content, 60#tab3:checked ~ #tab3_content { 61 display: block; 62} 63 64/*選択されているタブのスタイルを変える*/ 65.tabs input:checked + .tab_item { 66 background-color: #5ab4bd; 67 color: #fff; 68} 69 70/* タブの中のタブ2 */ 71/*タブ切り替え全体のスタイル*/ 72.intab { 73 width: 100%; 74} 75 76/*タブのスタイル*/ 77.intab_item { 78/* float: left; */ 79 border:solid 1px #86C7CD; 80 background-color:#fff; 81 margin:5px 2px; 82 padding:0 5px; 83 border-radius:5%; 84} 85 86/*ラジオボタンを全て消す*/ 87input[name="intab_item"] { 88 display: none; 89} 90 91/*タブ切り替えの中身のスタイル*/ 92.intab_content { 93 display: none; 94 padding: 4px 4px 0; 95 clear: both; 96 overflow: hidden; 97} 98 99 100/*選択されているタブのコンテンツのみを表示*/ 101#intab1_a:checked ~ #intab1_a_content, 102#intab1_b:checked ~ #intab1_b_content, 103#intab1_c:checked ~ #intab1_c_content 104#intab2_a:checked ~ #intab2_a_content, 105#intab2_b:checked ~ #intab2_b_content, 106#intab2_c:checked ~ #intab2_c_content 107#intab3_a:checked ~ #intab3_a_content, 108#intab3_b:checked ~ #intab3_b_content, 109#intab3_c:checked ~ #intab3_c_content 110{ 111 display: block; 112} 113 114/*選択されているタブのスタイルを変える*/ 115.intab input:checked + .intab_item { 116 background-color: #5ab4bd; 117 color: #fff; 118}

試したこと

子タブのIDの命名規則変更(競合を疑って)
1−1 〜 3−3 → 1-a ~ 3-c → 1~9

補足情報(FW/ツールのバージョンなど)

CSSが1-a〜1-cまでのときはすべて正常に動きます(もちろんタブ1の部分のみ)
2-a以降も追加すると一部表示されないタブが出てきます。

コードが長く、また文字数の関係で十分な状況解説ができず申し訳ありませんが、よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

ラジオボタンのnameがすべて"intab_item"になっているので、そこをグループごとに変更してみてください。

投稿2019/08/15 13:10

kei344

総合スコア69400

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問