Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

::search-text CSS pseudo-element

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Das ::search-text-CSS-Pseudoelement wendet Stile auf Suchergebnisse an, die über die Textsuchfunktion „Suchen“ oder „Auf Seite suchen“ des Browsers gefunden wurden.

Probieren Sie es aus

p::search-text {
  color: crimson;
  background-color: wheat;
}
<p>
  Using your browser's "Find in page" functionality, find a word or phrase that
  appears in this sentence, and note how, in supporting browsers, each result is
  highlighted using the specified custom styles.
</p>

Zulässige Eigenschaften

Mit ::search-text kann nur eine begrenzte Auswahl an CSS-Eigenschaften verwendet werden:

Syntax

css
::search-text {
  /* ... */
}

Beschreibung

Die meisten Browser verfügen über eine Textsuchfunktion innerhalb der Seite, die üblicherweise „Suchen“ oder „Auf Seite suchen“ heißt. Mit dem Pseudoelement ::search-text, einem der Hervorhebungs-Pseudoelemente, können Sie eine begrenzte Auswahl an Stilen auf die von der Browsersuche hervorgehobenen Textstellen anwenden.

Nicht alle Browser und Browserversionen heben Suchergebnisse innerhalb der Seite so hervor, dass sie mit CSS gestaltet werden können. In solchen Fällen ist ::search-text möglicherweise nicht implementiert oder wird ignoriert.

Wenn Sie ::search-text allein als Selektor verwenden, werden Suchergebnisse des Browsers überall auf der Seite gestaltet. Wenn Sie nur Suchergebnisse innerhalb bestimmter Elemente gestalten möchten, können Sie ::search-text mit anderen Selektoren kombinieren, beispielsweise section::search-text.

Außerdem können Sie ::search-text mit der Pseudoklasse :current kombinieren, um das aktuell fokussierte Suchergebnis gezielt zu gestalten, beispielsweise:

css
p::search-text {
  color: white;
  background-color: purple;
}

p::search-text:current {
  background-color: crimson;
}

Vererbungsmodell

Das Pseudoelement ::search-text folgt einem besonderen Vererbungsmodell, das allen Hervorhebungs-Pseudoelementen gemeinsam ist: Stile werden sowohl von den Elternelementen als auch von deren Pseudoelementen geerbt. Weitere Einzelheiten finden Sie im Abschnitt Vererbung von Hervorhebungs-Pseudoelementen.

Barrierefreiheit

Überschreiben Sie die Stile von Textsuchergebnissen nur zurückhaltend, insbesondere wenn Sie dies aus rein ästhetischen Gründen tun. Für Menschen mit kognitiven Einschränkungen oder geringer technischer Erfahrung können unerwartete Änderungen dieser Stile das Verständnis der Suchfunktion erschweren.

Ein wichtiger Anwendungsfall für ::search-text ist die Erhöhung des Farbkontrasts gegenüber der Standarddarstellung des Browsers. Wenn Sie hervorgehobenen Text anpassen, achten Sie darauf, dass das Kontrastverhältnis zwischen Vordergrund- und Hintergrundfarbe hoch genug ist, damit der hervorgehobene Text gut erkennbar bleibt.

Beispiele

Benutzerdefinierte Stile für Textsuchergebnisse

Dieses Beispiel zeigt, wie Sie mit ::search-text und :current die Ergebnisse der Browserfunktion „Auf Seite suchen“ individuell gestalten können.

HTML

Das HTML besteht aus einem einfachen Textabsatz. Wir zeigen den HTML-Quelltext nicht, um das Beispiel kurz zu halten und die Navigation durch die Suchergebnisse im gerenderten Beispiel zu erleichtern.

CSS

Im CSS gestalten wir zunächst das Pseudoelement ::search-text. Wir legen dafür eigene Werte für background-color, color und text-shadow fest.

css
::search-text {
  background-color: purple;
  color: white;
  text-shadow: 1px 1px 1px black;
}

Abschließend gestalten wir das aktuell fokussierte Suchergebnis über ::search-text:current. Dafür legen wir eine andere background-color und einige Werte für text-decoration fest, damit es sich von den übrigen Ergebnissen unterscheidet.

css
::search-text:current {
  background-color: crimson;
  text-decoration-line: underline;
  text-decoration-color: yellow;
  text-decoration-thickness: 3px;
}

Ergebnis

Das Beispiel wird wie folgt dargestellt:

Suchen Sie über die Suchfunktion Ihres Browsers nach einem Wort, das im Beispieltext mehrfach vorkommt, etwa „aliquam“, „amet“ oder „tortor“. Wechseln Sie zwischen den vorherigen und nächsten Treffern, um die Gestaltung mit :current zu sehen.

Spezifikationen

Spezifikation
CSS Pseudo-Elements Module Level 4
# selectordef-search-text

Browser-Kompatibilität

Siehe auch