2016-11-08 7 views
1

Ich arbeite an meiner Prüfung mit html/css, und ich habe eine Frage - wir sollen eine Website für Schriftarten erstellen, und ich möchte eine Indexseite haben, wo ich eine haben möchte der ähnlicheÄndern einer Farbe beim Schweben

R/r Roboto

jedoch präsentiert Schriftarten

Und die Schriftart in weiß gefärbt ist, während die seperator in einer blauen Farbe gefärbt ist, möchte ich die seperator auf weiß drehen, während der Rest der Text wird blau.

Für jetzt habe ich dies:

a:hover { 
 
    color: #00ebff; 
 
    transition: 
 
}
<a href="roboto.html"> 
 
    <h1>R<span style="color: #00ebff" class="spacer">/</span>r</h1> 
 
    <h2>Roboto</h2> 
 
</a>

und ich kann nicht für das Leben von mir herauszufinden, wie es zu tun.

+0

Du willst 'spacer' sein, während du zusammen bist lored, während er "a" schwebt? –

+2

nur eine kleine Notiz - in der Vergangenheit wurde es als schlecht angesehen, ein Block-Level-Element (wie ein H1) in ein Inline-Level-Element (wie ein "a") zu verschachteln. Jetzt - mit dem Aufkommen von HTML5 - wird es als gültig angesehen, aber sollte vielleicht nicht für Codequalitätszwecke getan werden - Sie sollten

...

gavgrif

Antwort

4

Sie sind auf der richtigen Linie, aber Sie müssen genauer in der Auswahl für das Trennelement sein. Die folgende CSS sollte erreichen, was Sie brauchen:

a:hover { 
    color: #00ebff; 
} 

a:hover span.spacer { 
    color: #fff !important; 
} 

Bitte beachten Sie, dass die Verwendung von !important Regel hier wesentlich ist, da Sie Inline-Styles verwenden. Allerdings wäre es viel besser, den Stil für .spacer in Ihrer CSS-Datei zu definieren, zu:

a .spacer { 
 
    color: #00ebff 
 
} 
 

 
a:hover { 
 
    color: #00ebff; 
 
} 
 

 
a:hover .spacer { 
 
    color: #fff; 
 
}
<a href="roboto.html"> 
 
    <h1>R<span class="spacer">/</span>r</h1> 
 
     <h2>Roboto</h2> 
 
</a>

+1

Das hat perfekt funktioniert, vielen Dank! :) – Barnslig

+0

Kein Problem, froh zu helfen! – BenM

0
.spacer{ 
    color: #00ebff; 
} 

a:hover { 
    color: #00ebff; 
} 

a:hover h1 .spacer{ 
    color: white; 
} 
+0

haben Oder wenn Sie ** die Inline-Stile verwenden müssen: 'a : hover h1 .spacer {farbe: weiß! wichtig; } ' – Ivaro18

0

a:hover { 
 
    color: #00ebff !important; 
 
} 
 
a:hover span.spacer { 
 
    color: #fff !important; 
 
}
<a href="roboto.html"> 
 
    <h1>R<span style="color: #00ebff" class="spacer">/</span>r</h1> 
 
    <h2>Roboto</h2> 
 
</a>

-1

Verwenden Sie diesen Code

.spacer{ 
     color: #fff; 
    } 

    a:hover { 
     color: #00ebff; 
    } 

    a:hover .spacer{ 
     color: white !important; 
    } 
+0

Dies wird nicht funktionieren. Das '.spacer' Element wird immer' # 00ebff' sein. – BenM

+0

Sie haben die Raumfarbe aufgefordert, weiß zu schalten, dies sollte funktionieren – user2362008

+0

Nein, Inline-Stile haben immer Vorrang, es sei denn, Sie verwenden '! Wichtig'. Bitte sehen Sie meine Antwort. – BenM

Verwandte Themen