Gibt es eine CSS-Eigenschaft zum Invertieren der font-color
abhängig von der background-color
wie dieses Bild?CSS-Schriftfarbe je nach Hintergrundfarbe invertieren
Antwort
Es gibt eine CSS-Eigenschaft namens mix-blend-mode, aber es ist nicht von IE unterstützt. Ich empfehle die Verwendung pseudo elements. Wenn Sie IE6 und IE7 unterstützen möchten, können Sie anstelle von Pseudoelementen auch two DIVs verwenden.
.inverted-bar {
position: relative;
}
.inverted-bar:before,
.inverted-bar:after {
padding: 10px 0;
text-indent: 10px;
position: absolute;
white-space: nowrap;
overflow: hidden;
content: attr(data-content);
}
.inverted-bar:before {
background-color: aqua;
color: red;
width: 100%;
}
.inverted-bar:after {
background-color: red;
color: aqua;
width: 20%;
}
<div class="inverted-bar" data-content="Lorem ipsum dolor sit amet"></div>
Ja, jetzt ist da. Mit mix-blend-mode
kann dies mit CSS getan werden.
div {
position:absolute;
height:200px
}
/* A white bottom layer */
#whitebg {
background: white;
width:400px;
z-index:1
}
/* A black layer on top of the white bottom layer */
#blackbg {
background: black;
width:100px;
z-index:2
}
/* Some white text on top with blend-mode set to 'difference' */
span {
position:absolute;
font-family: Arial, Helvetica;
font-size: 100px;
mix-blend-mode: difference;
color: white;
z-index: 3
}
/* A red DIV over the scene with the blend-mode set to 'screen' */
#makered {
background-color: red;
mix-blend-mode: screen;
width:400px;
z-index:4
}
<div id="whitebg"></div>
<div id="blackbg"></div>
<div id="makered"></div>
<span>test</span>
Im Moment diese Kante blutet und ist nicht weit von allen Browsern unterstützt --es vielleicht eines Tages Standard sein obwohl. Sie müssen wahrscheinlich die Funktion "Blend-Modi" aktivieren, damit dies ordnungsgemäß funktioniert.
Beste invertieren Textfarbe Antwort auf SO! Lassen Sie uns für die IE-Implementierung stimmen: https://status.modern.ie/mixblendmode – falsarella
Beachten Sie, dass die Verwendung des Mix-Blend-Modus Ihre CSS-Übergänge wie glatte Deckkraft unterbrechen kann, denn wenn ein untergeordnetes Element einen Mix-Blend-Modus aufweist, Die Opazität wird auf der GPU nicht flüssig dargestellt (zumindest ab heute in Chrome). –
Und Vorsicht Mixed-Blend-Modus: Unterschied scheint in Chrome 46 gebrochen, ID zeigt stattdessen Black Box. –
- 1. Change Hintergrundfarbe invertieren Text jQuery
- 2. Hintergrundfarbe ändern von Datagrid-Zelle je nach Objekteigenschaft
- 3. Kunden je nach Produktkategorie
- 4. Bildschirmhöhe je nach Thema
- 5. Textansicht je nach Vorhersagetext nach oben verschieben
- 6. NSMenuItem je nach Benutzerauswahl ändern
- 7. Berechtigungen je nach Situation anzeigen
- 8. je nach Route unterschiedliche Anmeldeansicht
- 9. Castle.Windsor Lifestyle je nach Kontext?
- 10. Swift framework je nach Kakaofrucht
- 11. mit Werten je nach Vorwahl
- 12. Unicorn.rb Konfiguration je nach Umgebung
- 13. Skalierungsfunktion invertieren
- 14. Bildsegmentierung nach Hintergrundfarbe - OpenCV Android
- 15. Hintergrundfarbe nach verschachtelter Ebene änderbar?
- 16. CSS-Übergang: Hintergrundfarbe ausblenden, nach
- 17. Erhalten Hintergrundfarbe nach CSS-Filter
- 18. Ändern UIButtons Schicht je nach Zustand
- 19. android: verschiedene menü je nach situation
- 20. ViewBox Mit svg je nach Fenstergröße
- 21. Ressourcen mit Gradle überschreiben je nach BuildType
- 22. Change Marker Symbol je nach Zustand richtig?
- 23. Ändern von Bildern je nach Geräteausrichtung
- 24. Warum funktioniert "STRING" .getBytes() je nach Betriebssystem
- 25. Echo verschiedene Bilder je nach Array-Wert
- 26. Header mit iTextSharp je nach Seiteninhalt hinzufügen
- 27. Outlook VBA - Text je nach Datum ersetzen
- 28. NSLocalizedString, Sprache je nach Anwendungseinstellung ändern
- 29. Je nach Bedingungen unterschiedliche Splash-Screens anzeigen
- 30. Je nach ihrer linken Spalte Zelle
Siehe oben Antwort hier -> http://stackoverflow.com/questions/301869/how-to-find-good-looking-font-color-if-background-color-is-known – ManseUK
Überprüfen Sie auch diese Frage: [Ist es möglich, Textfarbe basierend auf Hintergrundfarbe mit CSS zu ändern?] (Http://Stackoverflow.com/q/8820200/1960455) –