liやspanなどで囲ってみてもラジオボタンとしての動作ではなく1個目を選択し2個めを選択すると1個めのチェックが解除されると思うのですが入りっぱなしになる状態です。
見た目としてはラジオボタンなのですが実際は挙動が異なってしまいます。
またもう一つ動作を追加したいと思っているのでそちらも教えていただきたいです。
途中まではあっているとは思うのですが「:checked」に対しての指定がうまくいっていないか機能していないようなんです。
HTML
1<div class="no1"><label for="no1-1"><input type="radio" id="no1-1">hover1</label></div> 2<div class="no2"><label for="no2-1"><input type="radio" id="no2-1">hover2</label></div> 3<div class="no3"><label for="no3-1"><input type="radio" id="no3-1">hover2</label></div> 4<div class="no4"><label for="no4-1"><input type="radio" id="no4-1">hover2</label></div> 5<div class="no5"><label for="no5-1"><input type="radio" id="no5-1">hover2</label></div> 6<div class="no6"><label for="no6-1"><input type="radio" id="no6-1">hover2</label></div> 7 8<!--↓背景を設定するのに利用している部分です--> 9 <div class="wrapper"> 10 <div class="contents"> 11 12 </div> 13 </div> 14<!--↑背景を設定するのに利用している部分です--> 15 16<div class="noA"> 17<h1>sample</h1> 18<p>sample<br>sample</p> 19</div>
CSS
1/*切り替わる画像サイズと表示場所の指定、 2今回はhtmlファイルカラのDIVで囲った空のとこに対して出す*/ 3.wrapper { 4 width: 100%; 5 height: 100%; 6} 7.contents { 8 height: 100vh; 9 background-image: url(img/1-1920-1080.jpg); 10 background-position: center; 11 background-repeat: no-repeat; 12 background-size: cover; 13 /*margin-top: -300px;/*ボタン一個追加ごとに50px上乗せヘッダー下部に不要なスペースできるためつぶすために必要*/ 14} 15 16/*指定のラジオボタンをホバーすると切り替わる予定の画像設定と動作*/ 17.no1:hover ~ .wrapper .contents { 18 background-image: url(img/541.png); 19} 20.no2:hover ~ .wrapper .contents { 21 background-image: url(img/3-1920-1080.jpg); 22} 23.no3:hover ~ .wrapper .contents { 24 background-image: url(img/2-1920-1080.jpg); 25} 26 27/*ボタン押すまで消えてる文章の表示場所や消す設定*/ 28 29.noA h1 {text-align: center;} 30 31/*-700はHTMLのラジオボタンの数が増えるとHP表示の際に 32上部に空白ができてしまうために数値が大きいです*/ 33.noA {width: 600px; height: 100px; 34 font-weight: bold; 35 color: red; 36 position: relative; 37 top:-700px; 38 left: 30% 39 } 40 41 42/*ラジオボタンにチェックが入るまで非表示にする*/ 43.noA {display: none;} 44/* 45指定のラジオボタンにチェックが入ったら下記に指定した画像が背景画像に切り替わり、 46非表示にしていた.noAの文字が出るようになる 47*/ 48.no1 input[type="radio"]:checked + label ~ .wrapper .contents{ 49 background-image: url(img/at.png); 50} 51 52/*.no2のボタン.no3のボタンと続きます*/ 53 54
前提・実現したいこと
1.ラジオボタンが通常のラジオボタンの選択するように常に1個しか選択できないようにしたい。
2.指定のラジオボタンが選択された場合に下記に指定した場所に画像のみ入れ替わって表示されるようにしたい
(表示された場合別のラジオボタンがされた場合はそちらに指定した画像に代わるように動作させたい)
.contents {
height: 100vh;
background-image: url(img/1-1920-1080.jpg);
background-position: center;
background-repeat: no-repeat;
background-size: cover;}
回答5件
あなたの回答
tips
プレビュー