Heim > Web-Frontend > CSS-Tutorial > Kann CSS den Stil einer Klasse ändern, wenn man mit der Maus über eine andere fährt?

Kann CSS den Stil einer Klasse ändern, wenn man mit der Maus über eine andere fährt?

Mary-Kate Olsen
Freigeben: 2024-11-03 05:34:30
Original
716 Leute haben es durchsucht

Can CSS Modify One Class' Style on Hovering Over Another?

Verwenden von CSS zum Ändern des Klassenstils beim Bewegen des Mauszeigers

Kann eine einzelne CSS-Regel verwendet werden, um die CSS-Eigenschaften einer Klasse zu ändern, wenn der Mauszeiger darüber bewegt wird? ein Element aus einer separaten Klasse? Ist es möglich, eine Regel wie diese zu erstellen:

.item:hover .wrapper { /*some css*/ }
Nach dem Login kopieren

wobei .wrapper nicht direkt in .item enthalten ist, sondern sich an anderer Stelle im Dokument befindet?

CSS-Lösung

Ja, das ist mit CSS-Selektoren möglich. Es gibt zwei Vorgehensweisen, wenn Sie :hover verwenden, um den Stil eines anderen Elements zu ändern:

1. Nachkommendes oder untergeordnetes Element

Wenn .wrapper ein untergeordnetes Element von .item ist, können Sie diesen Selektor verwenden:

.item:hover .wrapper {
    /* CSS properties to change */
}
Nach dem Login kopieren

2. Geschwisterelement

Wenn .wrapper ein Geschwisterelement von .item ist und nach .item im DOM erscheint, können Sie diesen Selektor verwenden:

.item:hover ~ .wrapper {
    /* CSS properties to change */
}
Nach dem Login kopieren

JavaScript-Lösung

Während JavaScript für diese einfache Aufgabe nicht erforderlich ist, können Sie es verwenden, um das gewünschte Ziel zu erreichen Wirkung. Hier ist ein Beispiel:

document.getElementsByClassName('item')[0].addEventListener('mouseover', function() {
  document.getElementsByClassName('wrapper')[0].style.background = "url('some url')";
});
Nach dem Login kopieren

Zusätzliche Informationen

Es ist wichtig zu beachten, dass Ihre Beispielmenüelemente offenbar unterschiedliche Klassen verwenden. Wenn Sie mit der Maus über ein Element fahren, wird dessen Untermenü rechts als Overlay angezeigt. Die Klasse, die den Hintergrund des Untermenüs steuert, heißt „wrapper“. Um den gewünschten Effekt zu erzielen, verwenden Sie den oben beschriebenen Geschwisterselektor-Ansatz.

Referenzen

  • [CSS 2.1-Selektoren](https://www.w3.org /TR/CSS21/selectors.html)

Das obige ist der detaillierte Inhalt vonKann CSS den Stil einer Klasse ändern, wenn man mit der Maus über eine andere fährt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage