2016-11-11 3 views
0

Ich habe eine feste Schaltfläche mit einem teilweise transparenten Hintergrund erstellt, die gut funktioniert, wenn sie über einem dunklen Hintergrund angezeigt wird, aber wenn ich sie über einem hellen Hintergrund zeige, ist sie nicht sichtbar.Ändern Sie die Farbe der Schaltfläche, wenn sich die Hintergrundfarbe ändert?

Ich möchte, dass es sowohl auf hellen als auch auf dunklen Hintergründen lesbar ist, d. H. Die Schaltfläche sollte auf einer hellen Hintergrundfarbe zu einer dunkleren Farbe wechseln und umgekehrt.

Wie kann ich das in JavaScript codieren?

+2

Willkommen bei Stack-Überlauf. Bitte erläutern Sie, was Sie versucht haben, fügen Sie Code hinzu, zeigen Sie Beispiele und erklären Sie das Problem. In diesem [link] (http://stackoverflow.com/help/mcve) erfahren Sie, wie Sie Ihre Frage verbessern können. –

+0

Von was ich verstehe, haben Sie eine Schaltfläche, die in HTML deklariert ist und die eine RBGA-Hintergrundeigenschaft hat, ist das korrekt? Es gibt Möglichkeiten, wie Sie das mit JS oder Sass/Less tun können. Könnten Sie Ihren HTML/CSS-Code posten, bevor wir Code schreiben? – Falk

Antwort

0

Ich würde in Betracht ziehen, mit etwas wie TinyColor zu erkennen, ob der Hintergrund hell oder dunkel ist und die Schaltfläche entsprechend stylen.

0

Es gibt keine Möglichkeit, es mithilfe spezieller CSS-Eigenschaft zu lösen. Die beste Lösung besteht darin, mit verschachtelten CSS-Klassen zu spielen. Etwas wie:

CSS

.light-background { 
    background: white; 
} 
.light-background button { 
    background: gray; 
    color: white; 
} 
.dark-background { 
    background: gray; 
} 
.dark-background button { 
    background: white; 
    color: gray; 
} 

HTML

<div class="light-background"> 
    <button>Light</button> 
</div> 
<div class="dark-background"> 
    <button>Dark</button> 
</div> 

https://jsfiddle.net/bwd1mvwd/

Verwandte Themen