W3docs

CSS font-size-adjust Eigenschaft

Die CSS-Eigenschaft font-size-adjust legt fest, wie die Schriftgröße anhand der Höhe der Kleinbuchstaben statt der Großbuchstaben gewählt wird.

Die Eigenschaft font-size-adjust bewahrt die Lesbarkeit von Text, wenn die primäre font-family nicht verfügbar ist und eine Ersatzschrift verwendet wird. Dazu zwingt sie den gerenderten Text, eine Ziel-x-Höhe beizubehalten, unabhängig davon, welche Schrift im Stack tatsächlich verwendet wird.

Warum die x-Höhe wichtig ist

Die x-Höhe ist die Höhe der Kleinbuchstaben (wie der Buchstabe „x"), gemessen von der Grundlinie. Die em-Höhe ist die volle Schriftgröße. Das Verhältnis zwischen beiden wird als Aspektwert der Schrift bezeichnet:

aspect value = x-height / em-height

Zwei Schriften, die mit derselben font-size gesetzt wurden, können in der Größe trotzdem auffällig unterschiedlich wirken, weil ihre Aspektwerte verschieden sind. Zum Beispiel wirkt Verdana (Aspektwert ~ 0,58) bei gleicher Punktgröße größer und lesbarer als Georgia (~ 0,52). Wenn also eine Ersatzschrift die primäre Schrift ersetzt, kann der substituierte Text zu groß oder zu klein wirken, obwohl sich font-size nicht geändert hat.

font-size-adjust behebt dieses Problem. Wenn ein Zahlenwert angegeben wird, skaliert der Browser die verwendete Schrift so, dass ihre x-Höhe diesem Wert multipliziert mit der aktuellen font-size entspricht. Die visuelle Größe der Kleinbuchstaben bleibt dann konstant, egal welche Schrift in der Fallback-Kette zum Einsatz kommt.

Ein praktischer Arbeitsablauf: Nehmen Sie den Aspektwert Ihrer bevorzugten (erstgewählten) Schrift und übergeben Sie ihn als Wert für font-size-adjust. Die Ersatzschriften werden dann so angepasst, dass sie dem Erscheinungsbild Ihrer bevorzugten Schrift entsprechen.

Anfangswertnone
Gilt fürAlle Elemente. Gilt auch für ::first-letter und ::first-line.
VererbungJa.
AnimierbarJa.
VersionCSS2.1
DOM-Syntaxobject.style.fontSizeAdjust = "0.5";

Hinweis: Die Browserunterstützung für font-size-adjust ist schlecht. Firefox unterstützte die Eigenschaft bis Version 118, entfernte sie dann in Version 119 (2023), und sie wurde nie in Chrome, Safari oder Edge implementiert. In der Praxis kann man sich nicht mehr darauf verlassen. Der robusteste moderne Ansatz ist, Schriften selbst zu hosten (damit der Fallback selten ausgelöst wird) und die Ersatzschrift mit den Deskriptoren size-adjust, ascent-override und descent-override innerhalb einer @font-face-Regel anzupassen.

Syntax

Syntax der CSS-Eigenschaft font-size-adjust

font-size-adjust: number | none | initial | inherit;

Beispiel der font-size-adjust-Eigenschaft

Im folgenden Beispiel fordern beide Absätze eine Schrift an, die wahrscheinlich nicht installiert ist ("Made Up Font"), und greifen auf sans-serif zurück. Der zweite Absatz fügt font-size-adjust hinzu, sodass sein Fallback-Text auf eine feste x-Höhe normiert wird. In einem Browser, der die Eigenschaft noch implementiert, ist der angepasste Absatz konsistenter lesbar:

<!DOCTYPE html>
<html>
  <head>
    <title>font-size-adjust example</title>
    <style>
      p {
        font-family: "Made Up Font", sans-serif;
        font-size: 20px;
      }
      .adjusted {
        font-size-adjust: 0.5;
      }
    </style>
  </head>
  <body>
    <h1>font-size-adjust</h1>
    <p>Without font-size-adjust: the fallback font keeps its own x-height.</p>
    <p class="adjusted">
      With font-size-adjust: 0.5 the fallback x-height is normalized.
    </p>
  </body>
</html>

Werte

WertBeschreibung
noneKeine Anpassung der Schriftgröße. Dies ist der Standardwert der Eigenschaft.
numberEine positive Zahl, die das Aspektverhältnis darstellt (x-Höhe dividiert durch em-Höhe).
initialSetzt die Eigenschaft auf ihren Standardwert zurück.
inheritErbt die Eigenschaft vom übergeordneten Element.

Browser-Kompatibilität

BrowserUnterstützung
ChromeKeine Unterstützung
Firefox1.5–118 (entfernt in v119)
SafariKeine Unterstützung
EdgeKeine Unterstützung
OperaKeine Unterstützung

Übung

Übung
Was ist die Hauptfunktion der Eigenschaft 'font-size-adjust' in CSS?
Was ist die Hauptfunktion der Eigenschaft 'font-size-adjust' in CSS?

Siehe auch

Was this page helpful?