私は表示/非表示の2つのラジオボタンを持っていますdiv
私のウェブサイトです。最初のラジオボタンはdiv
の可視性を制御します。このdiv
には別のラジオボタンがあり、別のdiv
を表示/非表示しています。最初のラジオボタンは機能しますが、2番目のラジオボタンをクリックすると何も起こりません。HTMLのラジオボタンが特殊な分割で機能しないのはなぜですか?
これは私のHTMLとCSSのコードの例を次に示します。
HTML:
<body>
<label for="a">B</label><input type="radio" id="a" name="a" value="1">
<div id="B">
<p>Div B</p>
<label for="c">D</label><input type="radio" id="c" name="c" value="1">
</div>
<div id="D">
<p>Div D</p>
</div>
</body>
はCSS:
#B
{
float:left;
background-color: green;
width: 150px;
height: 50px;
display: none;
}
#D
{
float:right;
background-color: red;
width: 150px;
height: 50px;
display: none;
}
#a:checked ~ #B
{
display: block;
}
#c:checked ~ #D
{
display: block;
}
番目のボタンは、何もしない理由を私は理解していません。 JSを使用しないで解決策はありますか? @showdevが#c
が#D
ので、兄弟セレクタの兄弟が、その場合には機能しないだろうではありません、言ったように
は、
をあなたは使用しています[」あなたのCSSには「兄弟セレクタ」(https://developer.mozilla.org/en-US/docs/Web/CSS/General_sibling_selectors)がありますが、 '#c'は'#D'の兄弟ではありません。 – showdev
このリンクをありがとう、今私はそれが動作しない理由を理解する! – wammder