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

View in English Always switch to English

font-width

Eingeschränkt verfügbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

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

Hinweis: Die Eigenschaft font-width ist der moderne Ersatz für font-stretch, welches ein veraltetes Alias ist. Während font-width der vom Standard bevorzugte Name ist, hat font-stretch derzeit eine breitere Browser-Unterstützung. Überprüfen Sie das Fallback-Beispiel und die Browser-Kompatibilität Tabelle für Details.

Die font-width CSS Eigenschaft wählt ein normales, komprimiertes oder erweitertes Schriftbild aus einer Schriftart aus.

Probieren Sie es aus

font-width: condensed;
font-width: expanded;
font-width: ultra-expanded;
font-width: 50%;
font-width: 100%;
font-width: 150%;
<section class="default-example" id="default-example">
  <p class="transition-all" id="example-element">
    London. Michaelmas term lately over, and the Lord Chancellor sitting in
    Lincoln's Inn Hall. Implacable November weather. As much mud in the streets
    as if the waters had but newly retired from the face of the earth, and it
    would not be wonderful to meet a Megalosaurus, forty feet long or so,
    waddling like an elephantine lizard up Holborn Hill.
  </p>
</section>
@font-face {
  src: url("/shared-assets/fonts/LeagueMono-VF.ttf") format("truetype");
  font-family: "League";
  font-style: normal;
  font-weight: normal;
}

section {
  font-size: 1.2em;
  font-family: "League", sans-serif;
}

Syntax

css
/* Keyword values */
font-width: normal;
font-width: ultra-condensed;
font-width: extra-condensed;
font-width: condensed;
font-width: semi-condensed;
font-width: semi-expanded;
font-width: expanded;
font-width: extra-expanded;
font-width: ultra-expanded;

/* Percentage values */
font-width: 50%;
font-width: 100%;
font-width: 200%;

/* Global values */
font-width: inherit;
font-width: initial;
font-width: revert;
font-width: revert-layer;
font-width: unset;

Diese Eigenschaft kann als einzelnes Schlüsselwort oder als <percentage>-Wert angegeben werden.

Werte

normal

Gibt ein normal kondensiertes Schriftbild an.

semi-condensed, condensed, extra-condensed, ultra-condensed

Gibt ein stärker kondensiertes Schriftbild als normal an, wobei ultra-condensed das am stärksten kondensierte ist.

semi-expanded, expanded, extra-expanded, ultra-expanded

Gibt ein stärker erweitertes Schriftbild als normal an, wobei ultra-expanded das am stärksten erweiterte ist.

<percentage>

Ein <percentage>-Wert zwischen 50% und 200% (einschließlich). Negative Werte sind für diese Eigenschaft nicht zulässig.

Zuordnung von Schlüsselwörtern zu numerischen Werten

Die folgende Tabelle zeigt die Zuordnung zwischen den Schlüsselwortwerten und numerischen Prozentwerten:

Schlüsselwort Prozentsatz
ultra-condensed 50%
extra-condensed 62.5%
condensed 75%
semi-condensed 87.5%
normal 100%
semi-expanded 112.5%
expanded 125%
extra-expanded 150%
ultra-expanded 200%

Beschreibung

Einige Schriftfamilien bieten zusätzliche Schriftbilder an, bei denen die Zeichen schmaler als beim normalen Schriftbild (kondensierte Schriftbilder) oder breiter als beim normalen Schriftbild (erweiterte Schriftbilder) sind.

Sie können font-width verwenden, um ein kondensiertes oder erweitertes Schriftbild aus solchen Schriftarten auszuwählen. Wenn die von Ihnen verwendete Schriftart keine kondensierten oder erweiterten Schriftbilder bietet, hat diese Eigenschaft keine Wirkung.

Auswahl eines Schriftbildes

Das für einen gegebenen Wert von font-width ausgewählte Schriftbild hängt von den Schriftbildern ab, die von der betreffenden Schriftart unterstützt werden. Wenn die Schriftart kein Schriftbild bietet, das genau dem angegebenen Wert entspricht, werden Werte kleiner als 100% einem kondensierten Schriftbild und Werte gleich oder größer als 100% einem erweiterten Schriftbild zugeordnet.

Die folgende Tabelle zeigt die Auswirkungen der Einstellung unterschiedlicher Prozentwerte von font-width bei zwei verschiedenen Schriftarten:

Der folgende Screenshot zeigt, wie die obige Tabelle gerendert wird, falls Ihr Browser die font-width-Eigenschaft nicht unterstützt:

Eine Vergleichstabelle mit zwei Zeilen, die den Kleinbuchstaben e in unterschiedlichen Breiten (50%, 62.5%, 75%, 87.5%, 100%, 112.5%, 125%, 150%, 200%) zeigt. Die obere Zeile ist mit Inconsolata und die untere Zeile mit Anek Malayalam beschriftet. Beide Schriftarten sind serifenlos und die Buchstaben von Inconsolata sind etwas breiter als die von Anek Malayalam.

  • Inconsolata ist eine variable Schriftart, die einen kontinuierlichen Bereich von Breiten von 50% bis 200% bietet.
  • Anek Malayalam ist eine variable Google-Schriftart, die Breiten von 75% bis 125% unterstützt. Werte unterhalb und oberhalb dieses Bereichs wählen die nächstgelegene passende Schriftart aus.

Formale Definition

Anfangswertnormal
Anwendbar aufall elements and text. Auch anwendbar auf ::first-letter und ::first-line.
VererbtJa
Berechneter Wertpercentage
Animationstypby computed value type

Formale Syntax

font-width = 
normal |
<percentage [0,∞]> |
ultra-condensed |
extra-condensed |
condensed |
semi-condensed |
semi-expanded |
expanded |
extra-expanded |
ultra-expanded

Beispiele

Einstellung von Schriftbreitenprozentsätzen

html
<p class="condensed">an elephantine lizard</p>
<p class="normal">an elephantine lizard</p>
<p class="expanded">an elephantine lizard</p>
css
@font-face {
  src: url("/shared-assets/fonts/LeagueMono-VF.ttf") format("truetype");
  font-family: "LeagueMonoVariable";
  font-style: normal;
}

p {
  font:
    1.5rem "LeagueMonoVariable",
    sans-serif;
}

.condensed {
  font-width: 50%;
}

.normal {
  font-width: 100%;
}

.expanded {
  font-width: 200%;
}

Bereitstellung eines Fallbacks für font-stretch

Da font-width noch keine breite Browser-Unterstützung hat, möchten Sie vielleicht die veraltete font-stretch-Eigenschaft als Fallback einbinden. Platzieren Sie font-stretch vor font-width, damit unterstützende Browser die moderne Eigenschaft verwenden:

css
p {
  font-stretch: condensed; /* for browsers that don't support font-width */
  font-width: condensed;
}

Hinweis: Sie können dieses Fallback-Muster mit dem postcss-preset-env Plugin für PostCSS automatisieren, das die postcss-font-width-property Transformation enthält, um font-width Eigenschaften automatisch in font-stretch umzuwandeln.

Spezifikationen

Spezifikation
CSS Fonts Module Level 4
# propdef-font-width

Browser-Kompatibilität

Siehe auch