Heim > Web-Frontend > CSS-Tutorial > Hauptteil

So passen Sie Farben im Hochkontrastmodus automatisch an

王林
Freigeben: 2024-08-23 14:31:36
Original
629 Leute haben es durchsucht

How to Automatically Adjust Colors in High Contrast Mode

Einführung

Ich habe kürzlich einen Fehlerbericht erhalten, bei dem ein SVG-Symbol im Modus mit hohem Kontrast nicht korrekt angezeigt wurde. In diesem Artikel teile ich die Lösung, die für mich funktioniert hat.

Lösung

Im Modus mit hohem Kontrast habe ich die CanvasText-Systemfarbe verwendet, um die Farbe des Symbols automatisch anzupassen.

.icon {
  mask-image: url(svg-link);
  background-color: currentColor;
  ...
}

@media (forced-colors: active) {
  .icon::before {
    background-color: CanvasText;
  }
}
Nach dem Login kopieren

In meinem Fall habe ich zunächst currentColor verwendet, um die Farbe vom übergeordneten Element zu erben. Im Hochkontrastmodus wollte ich jedoch die Hintergrundfarbe im untergeordneten Element allgemein auf CanvasText setzen, also habe ich diese Änderung übernommen.

Was ist CanvasText?

CanvasText bezieht sich auf die Textfarbe, die für Anwendungsinhalte oder Dokumente verwendet wird. Es passt sich automatisch an, um den besten Kontrast zur Hintergrundfarbe des Systems zu bieten.

Durch die Verwendung von CanvasText stellen Sie sicher, dass Text und Symbole auch dann sichtbar bleiben, wenn der Benutzer den Modus mit hohem Kontrast aktiviert. Da sich CanvasText außerdem an das Thema des Systems anpasst, funktioniert es sowohl im dunklen als auch im hellen Modus gut.

In meinem Fall war die Hintergrundfarbe des Symbols zunächst auf Schwarz eingestellt. Wenn der Hintergrund jedoch im Hochkontrastmodus schwarz wurde, wurde das Symbol unsichtbar. Durch die Änderung der Farbe auf Weiß wurde es wieder sichtbar, aber um dies in allen Szenarien konsistent zu handhaben, habe ich mich für die Systemfarbe CanvasText entschieden.

Referenzen

https://developer.mozilla.org/en-US/docs/Web/CSS/system-color

Das obige ist der detaillierte Inhalt vonSo passen Sie Farben im Hochkontrastmodus automatisch an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage