2017-11-05 1 views
0

Ich arbeite an einer Angular-Anwendung, die einen Span-Block in einem H3-Element hat. Dieses span-Element erhält dynamisch eine Klasse green, wenn es grün wird. Ich erwartete das folgende CSS-Code zu arbeiten:Dynamisch Spannweite über CSS ändern

h3 span { 
    background: #d2001b; 
} 
h3 span.green { 
    background: #669900 !important; 
} 

Dies ist jedoch immer macht meine Spanne #d2001b. Was mache ich falsch?

+1

Was müssen Sie grün, den Hintergrund der Spanne oder die Farbe des Textes der Spanne? –

+0

Ah, Tippfehler, ich muss die Hintergrundfarbe ändern. – hY8vVpf3tyR57Xib

+0

Können Sie HTML senden, das generiert wird? Es scheint entweder eine dynamische Klasse wurde nicht hinzugefügt, oder CSS Selektor ist falsch –

Antwort

0

Hier ist eine Vanille Javascript Beispiel und Ihre CSS scheint korrekt zu sein, Ereignis ohne die !important.

Stellen Sie sicher, dass kein anderes CSS die Hintergrundfarbe außer Kraft setzt.

span = document.querySelector('#myspan'); 

span.onclick = event => { 
    span.classList.toggle('green'); 
} 

Voll Beispiel https://codepen.io/anon/pen/Ebyxwr

Verwandte Themen