CSS forced colors

Dieselbe Seite mit Systemfarben

Fließtext, Textlink, Kartenkante: hier greifen erzwungene Farben zuerst.

Website prüfen
Beispiel im Prüfbericht Markierter Befund
Markierter Befund · Kritisch · WCAG 1.4.3Bildunterschrift mit 1,17:1

Palette unter Nutzerkontrolle

Was der Browser neu zeichnet

Erzwungene Farben ersetzen die Autorenpalette beim Zeichnen. Form, Text und Semantik müssen den Wechsel tragen.

Schematische Darstellung. Die konkrete Systempalette legt die nutzende Person fest; Schwarz und Weiß stehen hier nur für den Wechsel.
colorCanvasText
background-colorCanvas
box-shadownone
border-stylebleibt
Form bleibtUnterstreichung, Rahmenbreite und Umriss bleiben als Geometrie erhalten.
Effekt kann verschwindenSchatten und nicht URL-basierte Hintergrundbilder werden nicht gezeichnet.
Palette gehört der PersonSystemfarben sind Rollen. Ihre tatsächlichen Werte sind nicht fest vorgegeben.

Systemfarben kommen in Rollenpaaren

Nutzen Sie das Paar des Elements. Ein eigener Farbwert neben einer Systemfarbe kann keinen verlässlichen Kontrast bilden.

Canvas / CanvasTextSeite, Karte, Fließtext
Canvas / LinkTextLink im Text, weiter unterstrichen
ButtonFace / ButtonTextSchaltfläche mit sichtbarer Kante
Field / FieldTextEingabefeld und sein Inhalt
Highlight / HighlightTextAuswahl oder deutlicher Fokusindikator

Ein Block ersetzt Farbe nicht durch Vermutung

Die Semantik nativer Elemente hilft dem Browser bei der Wahl. Ein div role="button" erhält nicht automatisch die Farbrolle eines nativen button.

@media (forced-colors: active) {
  .karte {
    color: CanvasText;
    background: Canvas;
    border: 2px solid CanvasText;
    box-shadow: none;
  }

  .karte a {
    color: LinkText;
    text-decoration: underline;
  }

  .karte button {
    color: ButtonText;
    background: ButtonFace;
    border: 2px solid ButtonText;
  }

  .karte :focus-visible {
    outline: 3px solid Highlight;
    outline-offset: 3px;
  }

  .farbschluessel {
    forced-color-adjust: none;
  }
}
CanvasTextersetzt Autorfarben mit einer Systemrolle
borderzeichnet die Kante, wenn der Schatten entfällt
LinkTextarbeitet mit der sichtbaren Unterstreichung
Highlightzeichnet den Fokus als Form, nicht nur als Füllung

forced-color-adjust: none ist die Ausnahme

Verwenden Sie den Opt-out nur, wenn die konkrete Farbe Information trägt und Sie Kontrast, Beschriftung und Zustände selbst für die erzwungene Darstellung sichern. Für Layoutflächen, Links und Bedienelemente bleibt auto die richtige Basis.

So prüfen Sie es

  1. Öffnen Sie in Chrome DevTools den Bereich Rendering und setzen Sie Emulate CSS media feature forced-colors auf forced-colors: active.
  2. Prüfen Sie Kanten, Fokus, Links, Auswahl und Fehlermeldungen. Kein Zustand darf nur an einer verschwundenen Füllung oder einem Schatten hängen.
  3. Testen Sie zusätzlich mit einem echten Kontrastdesign unter Windows. Die Emulation zeigt den Medienzustand, ersetzt aber nicht die nutzergewählte Palette.
  4. Kontrollieren Sie jeden Opt-out. Ohne zwingende Farbinformation entfernen Sie forced-color-adjust: none.

Aus dem Prüfbericht

Zwei Regeln, zwei Darstellungen

Kritisch Eigene Grautöne bestehen schon ohne Systemfarben nicht Regel color-contrast

Text und Fläche mit 1,17:1 fallen im normalen Design durch. Setzen Sie ein Paar mit mindestens 4,5:1, bevor Sie den Kontrastmodus bedienen.

Anleitung: Textkontraste prüfen und verbessern

Zum Mitnehmen

Die Systemfarben, korrigiert

Ein Farbpaar, eine Linie, ein Block für erzwungene Farben.

Korrektur in 3 Schritten ansehen
  1. Das Farbpaar auf 4,5:1 bringen

    Der Kontrastmodus ersetzt nicht jede Fläche. Ein Paar, das schon vorher 4,5:1 erreicht, bleibt in beiden Darstellungen lesbar.

    KorrekturvergleichSchritt 1 · CSS

    Vorher

    .hinweis {
      color: #58635f;
      background: #626e69;
    }

    Nachher

    .hinweis {
      color: #ffffff;
      background: #626e69;
    }

    Markierte Zeilen wurden geändert

    So prüfen Sie es Prüfen Sie beide Werte in einem Kontrastrechner. Das Verhältnis liegt über 4,5:1.

  2. Den Textlink unterstreichen

    Bei erzwungenen Farben wird Ihre Linkfarbe durch LinkText ersetzt. Die Unterstreichung bleibt und hält den Link im Absatz erkennbar.

    KorrekturvergleichSchritt 2 · CSS

    Vorher

    p a {
      color: #3b2bbd;
      text-decoration: none;
    }

    Nachher

    p a {
      color: #3b2bbd;
      text-decoration: underline;
    }

    Markierte Zeilen wurden geändert

    So prüfen Sie es Schalten Sie den Bildschirm auf Graustufen. Der Link ist im Satz noch zu sehen.

  3. Schatten durch eine Kontur ersetzen

    Schatten werden bei erzwungenen Farben nicht gezeichnet. Eine Kontur in CanvasText hält die Kante der Karte sichtbar.

    KorrekturvergleichSchritt 3 · CSS

    Vorher

    @media (forced-colors: active) {
      .karte {
        box-shadow: 0 2px 6px #00000033;
      }
    }

    Nachher

    @media (forced-colors: active) {
      .karte {
        border: 1px solid CanvasText;
      }
    }

    Markierte Zeilen wurden geändert

    So prüfen Sie es Schalten Sie in Windows ein Kontrastdesign ein. Die Karte hat weiterhin eine Kante.

Werbung

Kostenloser Website-Barrierefreiheits-Check

Website auf Barrierefreiheit prüfen.

Technische WCAG-Warnsignale erkennen. Kritische Stellen zuerst prüfen.

Der Website-Check ist bereit.

Werbung

Ein letzter Schritt

Prüfen, bevor Sie gehen.

Finden Sie automatisch erkennbare Barrieren auf Ihrer eigenen Website.

Website prüfen

Kostenlos starten · keine Installation

Automatisches Screening. Tastaturbedienung und Screenreader bleiben manuelle Prüfung.