font-size-adjust CSS property
Baseline
2024
Neu verfügbar
Seit July 2024 funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.
Die font-size-adjust CSS Eigenschaft bietet eine Möglichkeit, die GröÃe von Kleinbuchstaben relativ zur GröÃe von GroÃbuchstaben zu modifizieren, was die allgemeine font-size definiert. Diese Eigenschaft ist nützlich in Situationen, in denen es zu einem Schriftarten-Fallback kommen kann.
Die Lesbarkeit kann beeinträchtigt werden, wenn die bevorzugte font-family nicht verfügbar ist und die Ersatzschriftart einen signifikant anderen Aspektwert (Höhe der Kleinbuchstaben geteilt durch die SchriftgröÃe) hat. Die Lesbarkeit von Schriftarten, insbesondere bei kleinen SchriftgröÃen, wird mehr durch die GröÃe der Kleinbuchstaben als durch die GröÃe der GroÃbuchstaben bestimmt. Die font-size-adjust Eigenschaft ist nützlich, um die SchriftgröÃe von Ersatzschriftarten anzupassen, um den Aspektwert über Schriftarten hinweg konsistent zu halten, sodass der Text unabhängig von der verwendeten Schriftart ähnlich erscheint.
Syntax
/* Keyword */
font-size-adjust: none;
/* One value: <number> or from-font */
font-size-adjust: 0.5;
font-size-adjust: from-font;
/* Two values */
font-size-adjust: ex-height 0.5;
font-size-adjust: ch-width from-font;
/* Global values */
font-size-adjust: inherit;
font-size-adjust: initial;
font-size-adjust: revert;
font-size-adjust: revert-layer;
font-size-adjust: unset;
Werte
Die font-size-adjust Eigenschaft nimmt als Wert das Schlüsselwort none, einen (<number> oder from-font) oder zwei (<font-metric> und entweder <number> oder from-font) Werte an.
-
none- : Es wird keine Anpassung des
font-sizeWertes für die Ersatzschriftart vorgenommen.
- : Es wird keine Anpassung des
-
<font-metric>Optional- : Gibt das erste Wahl-Schriftartmaà an, das zur Anpassung der SchriftgröÃe der Ersatzschriftart verwendet werden soll. Dieser Parameter akzeptiert eines der unten aufgeführten Schlüsselwörter. Es ist ein optionaler Parameter, und
ex-heightwird verwendet, wenn kein<font-metric>angegeben ist.ex-height-
Verwendet das Verhältnis der x-Höhe (Höhe des Kleinbuchstabens "x" in einer Schriftart) zur SchriftgröÃe (Aspektwert), um die ErsatzschriftgröÃe anzupassen. Dieser Schlüsselwortwert wird verwendet, um Kleinbuchstaben über Schriftarten hinweg zu normalisieren.
cap-height-
Verwendet das Verhältnis der cap-Höhe (Höhe der GroÃbuchstaben) zur SchriftgröÃe, um die ErsatzschriftgröÃe anzupassen. Dieser Schlüsselwortwert wird verwendet, um GroÃbuchstaben über Schriftarten hinweg zu normalisieren.
ch-width-
Verwendet das Verhältnis der Breite (horizontaler Platzbedarf eines Zeichens in einer Schriftart) des Zeichens "0" (NULL, U+0030) zur SchriftgröÃe. Dieser Schlüsselwortwert wird verwendet, um horizontale Engschrift von Schriftarten zu normalisieren.
ic-width-
Verwendet das Verhältnis der Breite des Zeichens "æ°´" (CJK Wasser-Ideogramm, U+6C34) zur SchriftgröÃe. Dieser Schlüsselwortwert wird verwendet, um horizontale Weitschrift von Schriftarten zu normalisieren, insbesondere solche, die CJK-Zeichen (Chinesisch, Japanisch, Koreanisch) enthalten.
ic-height-
Verwendet das Verhältnis der Höhe (vertikaler Platzbedarf eines Zeichens in einer Schriftart) des Zeichens "æ°´" (CJK Wasser-Ideogramm, U+6C34) zur SchriftgröÃe. Dieser Schlüsselwortwert wird verwendet, um vertikale Weitschrift von Schriftarten zu normalisieren, insbesondere solche, die CJK-Zeichen enthalten.
- : Gibt das erste Wahl-Schriftartmaà an, das zur Anpassung der SchriftgröÃe der Ersatzschriftart verwendet werden soll. Dieser Parameter akzeptiert eines der unten aufgeführten Schlüsselwörter. Es ist ein optionaler Parameter, und
<number>- : Passt die verwendete SchriftgröÃe abhängig von dem angegebenen
<font-metric>an. Wenn kein<font-metric>angegeben ist (dann wird der Standardwertex-heightverwendet), passt der<number>Wert die SchriftgröÃe der Ersatzschriftart so an, dass ihre x-Höhe das angegebene Vielfache der SchriftgröÃe ist. Dieser Wert sollte im Allgemeinen dem Aspektwert (Verhältnis von x-Höhe zur SchriftgröÃe) der favorisierten Schriftart entsprechen. Das bedeutet, dass die favorisierte Schriftart, wenn sie verfügbar ist, über Browser hinweg konsistent angezeigt wird, unabhängig von ihrer Unterstützung vonfont-size-adjust.
Wenn ein
<font-metric>Wert angegeben ist, passt der<number>Wert die SchriftgröÃe gemäà dem gewählten<font-metric>an, um ein konsistentes Erscheinungsbild des angegebenen SchriftartmaÃes über verschiedene Schriftarten hinweg zu gewährleisten.Der
<number>Wert akzeptiert jede Zahl von0bis unendlich.0ergibt Text ohne Höhe (das heiÃt, der Text ist versteckt). Negative Werte sind ungültig.- : Passt die verwendete SchriftgröÃe abhängig von dem angegebenen
-
from-font- : Verwendet den
<number>Wert für das angegebene<font-metric>der ersten verfügbaren Schriftart.
- : Verwendet den
Beschreibung
Um die Kompatibilität mit Browsern sicherzustellen, die font-size-adjust nicht unterstützen, wird diese Eigenschaft als numerischer Multiplikator der font-size Eigenschaft angegeben. Diese Zahl sollte im Allgemeinen dem Aspektwert der bevorzugten Schriftart entsprechen.
Hinweis:
Wenn das angegebene <font-metric> in @font-face, z. B. durch die Verwendung des size-adjust Deskriptors, überschrieben wurde, wird das überschriebenen Maà in der font-size-adjust Berechnung verwendet. Dies bedeutet, dass, wenn font-size-adjust und size-adjust zusammen angewendet werden, size-adjust keinen Effekt hat.
Hinweis:
SchriftmaÃe wie x-Höhe und Kappenhöhe können zwischen Schriftvarianten (wie Fett- oder Kursivvarianten) innerhalb derselben font-family variieren. Wenn font-size-adjust from-font oder einen festen Wert verwendet, werden die MaÃe jeder Schriftvariante unabhängig angepasst, ungeachtet der relativen Unterschiede zwischen Schriftvarianten in derselben Schriftfamilie.
Die angepasste SchriftgröÃe wird mit der Formel u = (m / mâ²) s berechnet, wobei:
-
mdas Verhältnis des angegebenen<font-metric>zur favorisierten SchriftgröÃe ist. -
mâ²das Verhältnis des entsprechenden<font-metric>zur ErsatzschriftgröÃe ist. -
sder Wert derfont-sizeEigenschaft ist. -
udie neue, angepasste SchriftgröÃe für die Ersatzschriftart ist.
Betrachten Sie dieses Beispiel, um zu sehen, wie die angepasste SchriftgröÃe berechnet wird. Eine favorisierte Schrift hat eine font-size von 12px (s), und das Verhältnis von cap-height zur SchriftgröÃe ist 0,20 (m). Das cap-height-zu-SchriftgröÃe-Verhältnis in der Ersatzschrift ist 0,15 (mâ²). Der font-size-adjust Wert wurde auf cap-height 0,20 festgelegt. Wenn die primäre Schrift nicht verfügbar ist, wird die angepasste SchriftgröÃe der Ersatzschrift auf 16px ((0,20 / 0,15) * 12) berechnet. Dies stellt sicher, dass die cap-height der Ersatzschrift der der favorisierten Schrift ähnelt, wenn sie angezeigt wird.
Formale Definition
| Anfangswert | none |
|---|---|
| Anwendbar auf | all elements and text. Auch anwendbar auf ::first-letter und ::first-line. |
| Vererbt | Ja |
| Berechneter Wert | wie angegeben |
| Animationstyp | Nummer |
Formale Syntax
font-size-adjust =
none |
[ ex-height | cap-height | ch-width | ic-width | ic-height ]? [ from-font | <number [0,â]> ]
Beispiele
>Normalisieren der SchriftgröÃe durch Klein- und GroÃbuchstaben
Dieses Beispiel zeigt, wie die font-size-adjust Eigenschaft verwendet werden kann, um den gleichen Aspektwert über Schriftarten hinweg beizubehalten. Die Schriftart Verdana hat einen relativ hohen Aspektwert von 0,545, was bedeutet, dass die Kleinbuchstaben im Vergleich zu den GroÃbuchstaben relativ groà sind. Dies macht den Text in kleinen SchriftgröÃen leserlich. Die Schriftart Times hingegen hat einen niedrigeren Aspektwert von 0,447, wodurch der Text bei kleinen GröÃen weniger leserlich ist. Wenn Verdana die bevorzugte Schriftart ist und Times die Ersatzschrift, kann die Angabe der font-size-adjust Eigenschaft helfen, den gleichen Aspektwert in Times beizubehalten. Fällt die Schrift auf Times zurück, wird der Text ein ähnliches Maà an Lesbarkeit beibehalten, wie er es mit Verdana hätte.
Ebenso ist das cap-height-zu-SchriftgröÃe-Verhältnis in Verdana 0,73 und in Times 0,66. Wenn die font-size-adjust Eigenschaft auf Times angewendet wird, um ihre GroÃbuchstaben an das Verhältnis in Verdana anzupassen, wird die Times-Schrift in angepasster SchriftgröÃe angezeigt ((0,73 / 0,66) * 14) 15,48px`.
<p class="verdana">
A: This text uses the Verdana font (14px), which has relatively large
lowercase letters.
</p>
<p class="times">
B: This text uses the Times font (14px), which is hard to read in small sizes.
</p>
<p class="times adj-times-ex-height">
C: This text in 14px Times font is adjusted to the same aspect value as the
Verdana font, so lowercase letters are normalized across the two fonts.
</p>
<p class="times adj-times-cap-height">
D: This text in 14px Times font is adjusted to the same cap-height to font
size ratio as the Verdana font, so uppercase letters are normalized across the
two fonts.
</p>
.times {
font-family: "Times", serif;
font-size: 14px;
}
.verdana {
font-family: "Verdana", sans-serif;
font-size: 14px;
}
.adj-times-ex-height {
font-size-adjust: 0.545;
}
.adj-times-cap-height {
font-size-adjust: cap-height 0.73;
}
Ohne font-size-adjust in B könnte der Wechsel von der Verdana-Schrift zur Times-Schrift zu einer merklichen Verschlechterung der Lesbarkeit führen, bedingt durch den niedrigeren Aspektwert.
In C bemerken Sie, dass nur ein Wert für die font-size-adjust Eigenschaft angegeben ist, daher wird der Standardwert <font-metric> ex-height verwendet. D zeigt, wie die Schrift im Vergleich zu A aussehen würde, wenn die Höhe der GroÃbuchstaben angepasst wird.
Bestimmen des Aspektwertes einer Schriftart
Für eine gegebene Schriftart kann der gleiche Inhalt in zwei nebeneinanderstehenden <span> Elementen verwendet werden, um den Aspektwert der Schriftart zu bestimmen. Wenn dieselbe SchriftgröÃe für den Inhalt in beiden span-Elementen verwendet wird, entsprechen die Spans, wenn der font-size-adjust Wert in einem Span korrekt für die gegebene Schriftart ist.
Im folgenden Beispiel gibt es drei Paare von nebeneinanderstehenden <span> Elementen, die jeweils den Buchstaben "b" enthalten. Das Ziel ist, die font-size-adjust Eigenschaft für das rechte <span> in jedem Paar so lange anzupassen, bis die Ränder um die beiden Buchstaben übereinstimmen. Der resultierende font-size-adjust Wert kann als Aspektwert für die Schriftart betrachtet werden.
Beginnen Sie bei 0,6 im ersten Paar und passen Sie bis 0,5 im zweiten an, wir passen den font-size-adjust Wert weiter an, bis die Ränder um die "b" Buchstaben im dritten Paar perfekt übereinstimmen. In diesem Beispiel wird der Aspektwert mit 0,482 bestimmt.
<div>
<p><span>b</span><span class="adjust1">b</span></p>
0.6
</div>
<div>
<p><span>b</span><span class="adjust2">b</span></p>
0.5
</div>
<div>
<p><span>b</span><span class="adjust3">b</span></p>
0.482
</div>
body {
display: flex;
}
div {
text-align: center;
}
p {
font-family: "Futura", sans-serif;
font-size: 50px;
}
span {
border: solid 1px red;
}
.adjust1 {
font-size-adjust: 0.6;
}
.adjust2 {
font-size-adjust: 0.5;
}
.adjust3 {
font-size-adjust: 0.482;
}
Spezifikationen
| Spezifikation |
|---|
| CSS Fonts Module Level 5 > # font-size-adjust-prop > |
Browser-Kompatibilität
Siehe auch
font-sizefont-weightsize-adjust@font-faceDeskriptor- SVG
font-size-adjustAttribut - Lernen: Grundlegende Text- und Schriftstilierung