cssだけを使用して別のクラスの要素をホバリングすると、あるクラスのcssを変更する方法はありますか?以下のような使用:別のクラスのCSSを変更するにはホバー?
何か:
.item:hover .wrapper { /*some css*/ }
のみ 'ラッパーが' 内部 'アイテム' ではない、それはどこか別の場所です。
私は本当にこの単純なもののためにjavascriptを使いたくないのですが、どうすればいいでしょうか?失敗した試行は次のとおりです。
document.getElementsByClassName('item')[0].onmouseover="document.getElementsByClassName('wrapper')[0].style.background="url('some url')";";
各クラスの要素は1つだけです。なぜ彼らはテンプレートを作ったときにIDを使わなかったのか分かりませんが、それはちょうどその方法であり、私はそれを変更できません。
[編集]
これはメニューです。各メニュー要素には異なるクラスがあります。要素にマウスを置くと、サブメニューが右にポップアップ表示されます。オーバーレイのようなものですが、「Inspect Element」ツールを使用すると、サブメニューがアクティブなときにウェブサイト全体のHTMLが変化することがわかります(サブメニュー以外は何も意味しません)。私が 'ラッパー'と呼ぶクラスは、サブメニューの背景を制御するCSSを持っています。私は2つのクラスの間で見ることができます本当に接続がありません。
ルートにホバーの場合には、ここであなたは子クラスに影響を与えるために必要なCSSを置くことができます。 – Amberlamps
いいえ。CSSでは、ネストされていない要素が相互に影響を及ぼすことはできません。これにはJavascriptを使用する必要があります。 –
_ "どこか他の" _:正確にどこですか? '.item'が以前の兄弟だった場合は、' .item:hover〜.wrapper {...} ' – fcalderan