CSSで自身よりも上に位置する要素のスタイルを変更したいです。
下記のようなコードで考えています。
HTML
1<html> 2 <body> 3 <div class="box box1"></div> 4 <input type="checkbox" class="checkbox">check box 5 <div class="box box2"></div> 6 </body> 7</html>
CSS
1.box { 2 width: 100px; 3 height: 100px; 4 background-color: red; 5} 6 7.checkbox:cheked ~ .box2 { 8 background-color: black; 9}
このようなコードで、チェックボックスにチェックが入った際に、チェックボックスよりも上の要素であるbox1のスタイルを変更したいと考えています。こうした動作をCSSで実現することは可能でしょうか?とりあえず今のところはJavaScriptで対応していますが、CSS内で完結できればいいなと思っています。
間接セレクタを使用すると、チェックボックスの下にある要素、box2のスタイルは変更できますが、今回は上に適応させたいと考えています。間接セレクタの逆バージョンがあれば楽なのですが...
pointer-eventも考えてみましたが、hoverやactiveではなくチェックしている間はずっと変更後のスタイルと適応させておきたいです。
ざっと調べた結果、出来そうにないとは思っていますが、もしかしたら調べ方が悪かったり、見落としていたりするかもしれないと思い質問させていただきました。
何かご存じの方いましたら、よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。