Numerische Datentypen
Jede CSS-Deklaration besteht aus einem Eigenschafts-/Wertpaar. Der Wert kann je nach Eigenschaft verschiedene Datentypen umfassen, wie zum Beispiel eine einzelne Zahl, ein Schlüsselwort, eine Funktion oder eine Kombination verschiedener Typen; einige Werte haben Einheiten, während andere dies nicht tun. Numerische Datentypen umfassen <integer>
, <number>
, <dimension>
und <percentage>
Werte. Dieser Leitfaden bietet einen Überblick über numerische Datentypen. Weitere detaillierte Informationen finden Sie auf der Seite für jeden Werttyp.
Ganzzahlen
Eine Ganzzahl ist eine oder mehrere Dezimalstellen, 0
bis 9
, wie zum Beispiel 1024
oder -55
. Eine Ganzzahl kann durch ein +
oder -
Symbol vorangestellt werden, ohne Leerzeichen zwischen dem Symbol und der Ganzzahl.
Zahlen
Ein <number>
repräsentiert eine reelle Zahl, die möglicherweise einen Dezimalpunkt mit einem Bruchteil enthält oder nicht, zum Beispiel 0.255
, 128
oder -1.2
. Zahlen können auch durch ein +
oder -
Symbol vorangestellt sein.
Dimensionen
Ein <dimension>
ist ein <number>
, dem eine Einheit angehängt ist, zum Beispiel 45deg
, 100ms
oder 10px
. Der angehängte Einheitenbezeichner ist nicht case-sensitiv. Es gibt niemals ein Leerzeichen oder andere Zeichen zwischen der Zahl und dem Einheitenbezeichner: Das heißt, 1 cm
ist nicht gültig.
CSS verwendet Dimensionen zur Spezifizierung von:
<length>
(Längeneinheiten)<angle>
<time>
<frequency>
<flex>
<resolution>
Diese werden in den folgenden Unterabschnitten behandelt.
Längeneinheiten
Wo eine Längeneinheit, auch bekannt als Länge, als Wert für eine Eigenschaft erlaubt ist, wird dies als <length>
Typ beschrieben. Es gibt zwei Arten von Längen in CSS: relative und absolute. Relative Längeneinheiten spezifizieren eine Länge in Relation zu etwas anderem.
Es gibt zwei Arten von relativen Längen: schriftgrößenabhängige Längen und ansichtsportabhängige Längen. Diese kommen beide in zwei Arten vor. Schriftgrößenabhängige Längeneinheiten sind entweder lokal schriftgrößenabhängig oder wurzel schriftgrößenabhängig. Ansichtsportabhängige Längen sind entweder relativ zur Höhe oder Breite des Ansichtsports oder, wie im CSS Containment Modul definiert, relativ zu einem Container.
Lokal schriftgrößenabhängige Längen
Lokal schriftgrößenabhängige Längen sind relativ zur "lokalen" Schriftgröße oder Zeilenhöhe und spezifizieren eine Länge in Relation zu einer berechneten Größe eines Merkmals des Elements selbst oder relativ zum geerbten Wert des Elements im Fall einer Ringschleife, wie der em
Wert für eine font-size
Eigenschaft oder ein lh
Wert für eine line-height
Eigenschaft. Zum Beispiel ist em
relativ zur Schriftgröße des Elements und ex
ist relativ zur x-Höhe der Schrift des Elements.
Einheit | Relativ zu |
---|---|
cap |
Großbuchstabenhöhe (die nominelle Höhe von Großbuchstaben) der Schrift des Elements. |
ch |
Durchschnittliche Zeichenweiterung eines schmalen Glyphs in der Schrift des Elements, dargestellt durch das "0" (NULL, U+0030) Glyph. |
em |
Schriftgröße der Schrift des Elements. |
ex |
x-Höhe der Schrift des Elements. |
ic |
Durchschnittliche Zeichenweiterung eines vollbreiten Glyphs in der Schrift des Elements, dargestellt durch das "水" (CJK Wasser-Ideogramm, U+6C34) Glyph. |
lh |
Zeilenhöhe des Elements. |
Wurzel schriftgrößenabhängige Längen
Wurzel schriftgrößenabhängige Längen spezifizieren eine Länge in Relation zum Wurzelelement Vorfahren eines Elements, wie zum Beispiel <HTML>
oder <SVG>
.
Zum Beispiel ist rem
relativ zur Schriftgröße des Wurzelelements und rex
ist die x-Höhe der Schrift des Wurzelelements.
Einheit | Relativ zu |
---|---|
rcap |
Großbuchstabenhöhe (die nominelle Höhe von Großbuchstaben) der Schrift des Wurzelelements. |
rch |
Durchschnittliche Zeichenweiterung eines schmalen Glyphs in der Schrift des Wurzelelements, dargestellt durch das "0" (NULL, U+0030) Glyph. |
rem |
Schriftgröße der Schrift des Wurzelelements. |
rex |
x-Höhe der Schrift des Wurzelelements. |
ric |
Durchschnittliche Zeichenweiterung eines vollbreiten Glyphs in der Schrift des Wurzelelements, dargestellt durch das "水" (CJK Wasser-Ideogramm, U+6C34) Glyph. |
rlh |
Zeilenhöhe des Wurzelelements. |
Ansichtsporteinheiten
Ansichtsporteinheiten spezifizieren eine Länge relativ zu den Dimensionen des Ansichtsports.
Zum Beispiel ist vw
relativ zur Breite des Ansichtsports und vh
relativ zur Höhe des Ansichtsports.
Einheit | Relativ zu |
---|---|
dvh |
1% der dynamischen Höhe des Ansichtsports. |
dvw |
1% der dynamischen Breite des Ansichtsports. |
lvh |
1% der großen Höhe des Ansichtsports. |
lvw |
1% der großen Breite des Ansichtsports. |
svh |
1% der kleinen Höhe des Ansichtsports. |
svw |
1% der kleinen Breite des Ansichtsports. |
vb |
1% der Größe des Ansichtsports in der Block-Achse des Wurzelelements. |
vh |
1% der Höhe des Ansichtsports. |
vi |
1% der Größe des Ansichtsports in der Inline-Achse des Wurzelelements. |
vmax |
1% der größeren Dimension des Ansichtsports. |
vmin |
1% der kleineren Dimension des Ansichtsports. |
vw |
1% der Breite des Ansichtsports. |
Containereinheiten
Containereinheiten spezifizieren eine Länge relativ zu den Dimensionen eines Abfragecontainers.
Zum Beispiel ist cqw
relativ zur Breite des Abfragecontainers und cqh
relativ zur Höhe des Abfragecontainers.
Einheit | Relativ zu |
---|---|
cqb |
1% der Blockgröße eines Abfragecontainers |
cqh |
1% der Höhe eines Abfragecontainers |
cqi |
1% der Inline-Größe eines Abfragecontainers |
cqmax |
Der größere Wert von cqi oder cqb |
cqmin |
Der kleinere Wert von cqi oder cqb |
cqw |
1% der Breite eines Abfragecontainers |
Absolute Längeneinheiten
Absolute Längeneinheiten sind an eine physische Länge gebunden: entweder ein Zoll oder ein Zentimeter. Viele dieser Einheiten sind daher nützlicher, wenn das Ausgabeformat ein festes Größenmedium ist, wie zum Beispiel Druck. Zum Beispiel ist mm
ein physischer Millimeter, 1/10 eines Zentimeters.
Einheit | Name | Entspricht |
---|---|---|
cm |
Zentimeter | 1cm = 96px/2.54 |
in |
Zoll | 1in = 2.54cm = 96px |
mm |
Millimeter | 1mm = 1/10 von 1cm |
pc |
Pica | 1pc = 1/6 von 1in |
pt |
Punkt | 1pt = 1/72 von 1in |
px |
Pixel | 1px = 1/96 von 1in |
Q |
Viertelmillimeter | 1Q = 1/40 von 1cm |
Bei der Einbindung eines Längenwerts, wenn die Länge 0
ist, ist der Einheitenbezeichner nicht erforderlich. Andernfalls ist der Einheitenbezeichner erforderlich, nicht case-sensitiv und muss unmittelbar nach dem numerischen Teil des Wertes kommen, ohne Leerzeichen dazwischen.
Winkeleinheiten
Winkelwerte werden durch den Typ <angle>
dargestellt und akzeptieren die folgenden Werte:
Einheit | Name | Beschreibung |
---|---|---|
deg |
Grad | Ein Vollwinkel hat 360 Grad. |
grad |
Gon | Ein Vollwinkel hat 400 Gon. |
rad |
Radiant | Ein Vollwinkel hat 2π Radiant. |
turn |
Umdr. | Ein Vollwinkel hat 1 Umdrehung. |
Zeiteinheiten
Zeitwerte werden durch den Typ <time>
dargestellt. Wenn ein Zeitwert angegeben wird, ist der Einheitenbezeichner — s
oder ms
— erforderlich. Es akzeptiert die folgenden Werte.
Einheit | Name | Beschreibung |
---|---|---|
ms |
Millisekunden | Eine Sekunde hat 1.000 Millisekunden. |
s |
Sekunden |
Frequenzeinheiten
Frequenzwerte werden durch den Typ <frequency>
dargestellt. Es akzeptiert die folgenden Werte.
Einheit | Name | Beschreibung |
---|---|---|
Hz |
Hertz | Repräsentiert die Anzahl der Vorkommen pro Sekunde. |
kHz |
KiloHertz | Ein KiloHertz sind 1000 Hertz. |
1Hz
, was auch als 1hz
oder 1HZ
geschrieben werden kann, ist ein Zyklus pro Sekunde.
Flex-Einheiten
Flex-Einheiten werden durch den Typ <flex>
dargestellt. Es akzeptiert den folgenden Wert.
Einheit | Name | Beschreibung |
---|---|---|
fr |
Flex | Repräsentiert eine flexible Länge innerhalb eines Grid-Containers |
Auflösungseinheiten
Auflösungseinheiten werden durch den Typ <resolution>
dargestellt. Sie repräsentieren die Größe eines einzelnen Punkts in einer grafischen Darstellung, wie zum Beispiel einem Bildschirm, indem sie angeben, wie viele dieser Punkte in einen CSS-Zoll, Zentimeter oder Pixel passen. Es akzeptiert die folgenden Werte:
Einheit | Beschreibung |
---|---|
dpcm |
Punkte pro Zentimeter. |
dpi |
Punkte pro Zoll. |
dppx , x |
Punkte pro px Einheit. |
Prozentsätze
Ein <percentage>
ist ein Typ, der einen Bruchteil eines anderen Wertes repräsentiert.
Prozentwerte sind immer relativ zu einer anderen Größe, zum Beispiel einer Länge. Jede Eigenschaft, die Prozentsätze zulässt, definiert auch die Größe, auf die sich der Prozentsatz bezieht. Diese Größe kann der Wert einer anderen Eigenschaft desselben Elements sein, der Wert einer Eigenschaft eines Vorfahrenelements, eine Messung eines umgebenden Blocks oder etwas anderes.
Zum Beispiel, wenn Sie die width
einer Box als Prozentsatz angeben, bezieht sie sich auf den Prozentsatz der berechneten Breite des Elternteils der Box:
.box {
width: 50%;
}
Mischung von Prozentsätzen und Dimensionen
Einige Eigenschaften akzeptieren eine Dimension, die entweder einer von zwei Typen sein könnte, zum Beispiel ein <length>
oder ein <percentage>
. In diesem Fall ist der erlaubte Wert in der Spezifikation als Kombinationseinheit detailliert angegeben, z.B. <length-percentage>
. Andere mögliche Kombinationen sind wie folgt:
Spezielle Datentypen (in anderen Spezifikationen definiert)
Farbe
Der <color>
Wert legt die Farbe eines Merkmal eines Elements fest (z.B. die Hintergrundfarbe) und ist im CSS Color Module definiert.
Bild
Der <image>
Wert spezifiziert alle verschiedenen Typen von Bildern, die in CSS verwendet werden können und ist im CSS Image Values and Replaced Content Module definiert.
Position
Der <position>
Typ definiert die 2D-Positionierung eines Objekts innerhalb eines Positionierungsbereichs, zum Beispiel eines Hintergrundbildes innerhalb eines Containers. Dieser Typ wird als background-position
interpretiert und daher in der CSS Backgrounds and Borders Specification festgelegt.
Funktionale Notation
Funktionale Notation ist ein Wertetyp, der komplexere Typen repräsentieren oder spezielle Verarbeitung durch CSS aufrufen kann. Die Syntax beginnt mit dem Namen der Funktion, gefolgt von einer linken Klammer (
, gefolgt von den Argument(en) der Notation, gefolgt von einer rechten Klammer )
. Funktionen können mehrere Argumente enthalten, die ähnlich wie ein CSS-Eigenschaftswert formatiert sind.
Leerzeichen sind innerhalb der Klammern erlaubt, aber optional. (Siehe jedoch Hinweise zu Leerzeichen auf Seiten für min()
, max()
, minmax()
und clamp()
Funktionen.)
Einige alte Notationen, wie die alte Syntax für rgb()
, rgba()
, hsl()
und hsla()
, verwendeten Kommas, aber Kommas werden im Allgemeinen nur verwendet, um Elemente in einer Liste zu trennen. Wenn ein Komma verwendet wird, um Argumente zu trennen, sind Leerzeichen optional vor und nach dem Komma.
Die Spezifikation definiert auch die toggle()
Funktion. Diese wurde bisher jedoch noch nicht implementiert.
Spezifikationen
Specification |
---|
CSS Values and Units Module Level 4 |