text-box

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Die text-box CSS Eigenschaft ist eine Kurzform, die den Eigenschaften text-box-trim und text-box-edge entspricht. Diese geben zusammen an, wie viel Platz am Anfang und Ende des Blockcontainers eines Textelements entfernt werden soll.

Zusammengesetzte Eigenschaften

Diese Eigenschaft ist eine Kurzform für die folgenden CSS-Eigenschaften:

Syntax

css
/* Single keyword */
text-box: normal;

/* One text-box-edge keyword */
text-box: trim-start text;
text-box: trim-both text;

/* Two text-box-edge keywords */
text-box: trim-start cap alphabetic;
text-box: trim-both ex text;

/* Global values */
text-box: inherit;
text-box: initial;
text-box: revert;
text-box: revert-layer;
text-box: unset;

Werte

Der text-box-Wert kann aus einem Wert von text-box-trim und einem Wert von text-box-edge bestehen, getrennt durch ein Leerzeichen. Siehe die entsprechenden Seiten für die Wertbeschreibungen.

Die text-box-Eigenschaft kann auch das Schlüsselwort normal annehmen, was text-box: none auto; entspricht.

Wenn text-box-trim weggelassen wird, ist es auf trim-both gesetzt. Wenn text-box-edge weggelassen wird, ist es auf auto gesetzt.

Formale Definition

Anfangswertnormal
Anwendbar aufBlock containers and inline boxes
VererbtNein
Berechneter Wertthe specified keyword
Animationstypdiskret

Formale Syntax

text-box = 
normal |
<'text-box-trim'> || <'text-box-edge'>

<text-box-trim> =
none |
trim-start |
trim-end |
trim-both

<text-box-edge> =
auto |
<text-edge>

<text-edge> =
[ text | ideographic | ideographic-ink ] |
[ text | ideographic | ideographic-ink | cap | ex ] [ text | ideographic | ideographic-ink | alphabetic ]

Beschreibung

Die Höhe von nur Text-Inhalt ist relativ zur Höhe der Schrift. In digitalen Schriftdateien umfasst die Höhe alle Zeichen, einschließlich Großbuchstaben, Oberlängen, Unterlängen usw. Verschiedene Schriften haben unterschiedliche Basis-Linienhöhen, was bedeutet, dass Zeilen mit derselben font-size Zeilenboxen unterschiedlicher Höhe erzeugen, was das Erscheinungsbild des Abstands zwischen den Zeilen beeinflusst.

Die text-box-Eigenschaften ermöglichen es, zusätzlichen Abstand am Anfang und am Ende des Blockcontainers eines Textelements zu entfernen. Dies kann das Durchschuss am Anfang und Ende des Blocks sowie den in der Schrift definierten Abstand umfassen (wie oben beschrieben). Dies macht es viel einfacher, den Textabstand in Blockrichtung zu kontrollieren.

Beispiele

Grundlegende Verwendung von text-box

Im folgenden Beispiel haben wir zwei <p> Elemente mit den Klassen one und two.

Wir wenden einen text-box-Wert von trim-end cap alphabetic auf den ersten Absatz an. Der text-box-edge-Wert von cap alphabetic gibt an, dass die obere Kante auf der Höhe der Großbuchstaben geschnitten und die untere Kante mit der Textbasislinie bündig ist. Da der text-box-trim-Wert auf trim-end gesetzt ist, wird nur die untere Kante des Absatzes geschnitten.

Wir wenden einen text-box-Wert von trim-both ex alphabetic auf den zweiten Absatz an. Der text-box-edge-Wert von ex alphabetic gibt an, dass die obere Kante auf der x-Höhe der Schrift (der oberen Kante der kurzen Kleinbuchstaben) geschnitten und die untere Kante mit der Textbasislinie bündig ist. Da der text-box-trim-Wert auf trim-both gesetzt ist, werden sowohl die obere als auch die untere Kante des Absatzes geschnitten.

css
.one {
  text-box: trim-end cap alphabetic;
}

.two {
  text-box: trim-both ex alphabetic;
}

p {
  border-top: 5px solid magenta;
  border-bottom: 5px solid magenta;
}

Ergebnis

Die Ausgabe ist wie folgt. Beachten Sie, dass wir einen oberen und unteren Rand auf jedem Absatz hinzugefügt haben, sodass Sie sehen können, wie der Abstand in jedem Fall angepasst wurde.

Spezifikationen

Specification
CSS Inline Layout Module Level 3
# text-box-shorthand

Browser-Kompatibilität

Siehe auch