Heim >Web-Frontend >CSS-Tutorial >Wie kann ich die Schriftfarbe basierend auf der Hintergrundfarbe in CSS dynamisch umkehren?
Invertieren der Schriftfarbe basierend auf der Hintergrundfarbe
In CSS kann es vorkommen, dass Sie die Schriftfarbe abhängig von der Hintergrundfarbe umkehren möchten Hintergrundfarbe, wodurch ein ähnlicher Effekt wie im Bild unten erzielt wird:
[Bild mit abwechselnd weißem und schwarzem Text auf farbigem Hintergrund Panels]
CSS-Lösung:
Während es keine direkte CSS-Eigenschaft zum Invertieren der Schriftfarbe basierend auf der Hintergrundfarbe gibt, können Sie dies mithilfe von Pseudoelementen erreichen. Darüber hinaus können Sie zur Kompatibilität mit älteren Browsern wie IE6 und IE7 zwei DIVs anstelle von Pseudoelementen verwenden.
Mix-Blend-Mode-Eigenschaft:
CSS hat eine Eigenschaft namens mix-blend-mode, die jedoch von Internet Explorer nicht unterstützt wird. Mit dieser Eigenschaft können Sie die Vordergrund- (Schriftfarbe) und Hintergrundfarben mischen, um verschiedene Effekte zu erzielen. Allerdings ist es, wie bereits erwähnt, aufgrund der eingeschränkten Browserunterstützung für dieses Szenario weniger praktisch.
Pseudo-Element-Ansatz:
Um den alternierenden Farbeffekt mithilfe von Pseudoelementen zu erzeugen, Fügen Sie ein :before- und :after-Pseudoelement in ein übergeordnetes Element mit einer relativen Position ein. Stellen Sie den Inhalt dieser Pseudoelemente auf den gewünschten Text ein und passen Sie deren Hintergrundfarben an. Durch Steuern der Breite des :after-Pseudoelements können Sie den Inversionseffekt erzielen.
Beispielcode:
.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%; } html { font-size: 16px; }
<div class="inverted-bar" data-content="Lorem ipsum dolor sit amet"></div>
Mit diesem Ansatz können Sie Folgendes erreichen Kehren Sie die Schriftfarbe je nach Hintergrundfarbe um und erzielen Sie so einen optisch ansprechenden Effekt in Ihren Webdesigns.
Das obige ist der detaillierte Inhalt vonWie kann ich die Schriftfarbe basierend auf der Hintergrundfarbe in CSS dynamisch umkehren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!