2017-04-30 8 views
0

Ich bin ganz verwirrt, als ich dachte immer, dass Sie ein HTML-Element CSS ändern könnten, wenn ein anderes Element direkt in css schwebt ist:Element ändern, wenn ein anderes Element in CSS schwebt ist

h1:hover h2 { 
color:red; 
} 

mich mit all erinnern Ich habe gelernt, dass der oben genannte Code die Farbe von h2 in rot ändern sollte, wenn h1 über ihm schwebt, aber es funktioniert nicht. Was mache ich falsch?

+0

[check] (http://stackoverflow.com/questions/4502633/how-to-affe-other-elements-when-a-div-is-hated) – Nimish

+0

Das funktioniert nur, wenn 'h2' aa ist Kind oder Enkelknoten von 'h1' –

+0

Sie können es mit' JQuery' tun –

Antwort

0

Nur wenn h2 in h1 in Ihrem Markup verschachtelt ist. Aber Verschachtelung Überschrift ist durch HTML-W3C-Spezifikationen verboten.

0

Sie verwenden ein Nachkomme combinator, so die Regel:

Wählt jedes h2-Element, das ein Nachfahre eines h1-Element ist, das in einem Hover-Zustand befindet.

source

Es ist nicht möglich, ein h2 zu haben, der ein Nachkomme einer h1 in HTML (es würde keinen Sinn machen: Wie ein Unterrubrik Teil einer Position sein könnte) .

Die combinators Sektion der Spezifikation könnte Ihnen etwas zeigen, mit dem Sie einen Pfad durch Ihr DOM (den wir nicht sehen können, weil Sie Ihren HTML nicht eingeschlossen haben) von Ihrem H1 zu Ihrem H2 verfolgen können.

Verwandte Themen