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

View in English Always switch to English

CSS Typed Object Model API

Die CSS Typed Object Model API vereinfacht die Manipulation von CSS-Eigenschaften, indem sie CSS-Werte als typisierte JavaScript-Objekte statt als Strings verfügbar macht. Dies vereinfacht nicht nur die Manipulation von CSS, sondern verringert auch die negativen Auswirkungen auf die Leistung im Vergleich zu HTMLElement.style.

Normalerweise können CSS-Werte in JavaScript als Strings gelesen und geschrieben werden, was langsam und umständlich sein kann. Die CSS Typed Object Model API bietet Schnittstellen, um mit den zugrunde liegenden Werten zu interagieren, indem sie diese mit spezialisierten JS-Objekten darstellt, die einfacher und zuverlässiger manipulierbar und verständlich sind als das Parsen und Verketten von Strings. Dies ist für Autoren einfacher (beispielsweise werden numerische Werte mit echten JS-Zahlen reflektiert und haben einheitsgeprüfte mathematische Operationen definiert). Es ist auch allgemein schneller, da Werte direkt manipulierbar und dann kostengünstig zurück in zugrunde liegende Werte übersetzbar sind, ohne sowohl CSS-Strings zu erstellen als auch zu parsen.

Die CSS Typed OM ermöglicht sowohl die performante Manipulation von Werten, die CSS-Eigenschaften zugewiesen sind, als auch die Erstellung von wartbarem Code, der verständlicher und einfacher zu schreiben ist.

Schnittstellen

CSSStyleValue

Das CSSStyleValue-Interface der CSS Typed Object Model API ist die Basisklasse aller über die Typed OM API zugänglichen CSS-Werte. Eine Instanz dieser Klasse kann überall verwendet werden, wo ein String erwartet wird.

CSSStyleValue.parse()

Methode, die es ermöglicht, CSSNumericValue aus einem CSS-String zu konstruieren. Sie setzt eine spezifische CSS-Eigenschaft auf die angegebenen Werte und gibt den ersten Wert als CSSStyleValue-Objekt zurück.

CSSStyleValue.parseAll()

Methode, die alle Vorkommen einer spezifischen CSS-Eigenschaft auf den angegebenen Wert setzt und ein Array von CSSStyleValue-Objekten zurückgibt, die jeweils einen der bereitgestellten Werte enthalten.

StylePropertyMap

Das StylePropertyMap-Interface der CSS Typed Object Model API bietet eine Darstellung eines CSS-Deklarationsblocks als Alternative zu CSSStyleDeclaration.

StylePropertyMap.set()

Methode, die die CSS-Deklaration mit der angegebenen Eigenschaft auf den angegebenen Wert ändert.

StylePropertyMap.append()

Methode, die eine neue CSS-Deklaration zur StylePropertyMap mit der angegebenen Eigenschaft und dem Wert hinzufügt.

StylePropertyMap.delete()

Methode, die die CSS-Deklaration mit der angegebenen Eigenschaft aus der StylePropertyMap entfernt.

StylePropertyMap.clear()

Methode, die alle Deklarationen in der StylePropertyMap entfernt.

CSSUnparsedValue

Das CSSUnparsedValue-Interface der CSS Typed Object Model API repräsentiert Eigenschaftswerte, die auf benutzerdefinierte Eigenschaften verweisen. Es besteht aus einer Liste von Stringfragmenten und Variablenreferenzen.

CSSUnparsedValue() Konstruktor

Erstellt ein neues CSSUnparsedValue-Objekt, das Eigenschaftswerte darstellt, die auf benutzerdefinierte Eigenschaften verweisen.

CSSUnparsedValue.entries()

Methode, die ein Array der eigenen aufzählbaren [key, value]-Paare eines gegebenen Objekts in derselben Reihenfolge zurückgibt, wie sie von einer for...in-Schleife bereitgestellt wird (der Unterschied besteht darin, dass eine for-in-Schleife auch Eigenschaften in der Prototypkette aufzählt).

CSSUnparsedValue.forEach()

Methode, die eine bereitgestellte Funktion einmal für jedes Element des CSSUnparsedValue ausführt.

CSSUnparsedValue.keys()

Methode, die ein neues Array-Iterator-Objekt zurückgibt, das die Schlüssel für jeden Index im Array enthält.

CSSKeywordValue Serialisierung

Das CSSKeywordValue-Interface der CSS Typed Object Model API erstellt ein Objekt, um CSS-Schlüsselwörter und andere Bezeichner darzustellen.

CSSKeywordValue() Konstruktor

Konstruktor erstellt ein neues CSSKeywordValue()-Objekt, das CSS-Schlüsselwörter und andere Bezeichner darstellt.

CSSKeywordValue.value()

Eigenschaft des CSSKeywordValue-Interfaces, die den Wert des CSSKeywordValue zurückgibt oder setzt.

CSSStyleValue Schnittstellen

CSSStyleValue ist die Basisklasse, durch die alle CSS-Werte ausgedrückt werden. Unterklassen umfassen:

CSSImageValue

Eine Schnittstelle, die Werte für Eigenschaften darstellt, die ein Bild als Wert annehmen, beispielsweise background-image, list-style-image oder border-image-source.

CSSKeywordValue

Eine Schnittstelle, die ein Objekt erstellt, um CSS-Schlüsselwörter und andere Bezeichner darzustellen. Wenn es an Stellen verwendet wird, an denen ein String erwartet wird, gibt es den Wert von CSSKeyword.value zurück.

CSSMathValue

Ein Baum aus Unterklassen, der numerische Werte repräsentiert, die komplexer sind als ein einzelner Wert und eine Einheit, einschließlich:

CSSNumericValue

Ein Interface, das Operationen darstellt, die alle numerischen Werte ausführen können, einschließlich:

CSSPositionValue

Repräsentiert Werte für Eigenschaften, die eine Position erfordern, beispielsweise object-position.

CSSTransformValue

Ein Interface, das eine Liste von transform-Wertlisten repräsentiert. Sie "enthalten" einen oder mehrere CSSTransformComponents, die einzelne transform-Funktionswerte darstellen.

CSSUnitValue

Ein Interface, das numerische Werte darstellt, die als eine einzige Einheit oder als benannte Zahl und Prozentsatz dargestellt werden können.

CSSUnparsedValue

Repräsentiert Eigenschaftswerte, die auf benutzerdefinierte Eigenschaften verweisen. Es besteht aus einer Liste von Stringfragmenten und Variablenreferenzen.

Spezifikationen

Specification
CSS Typed OM Level 1
# stylevalue-objects
CSS Typed OM Level 1
# the-stylepropertymap
CSS Typed OM Level 1
# cssunparsedvalue
CSS Typed OM Level 1
# keywordvalue-objects

Browser-Kompatibilität

api.CSSStyleValue

api.StylePropertyMap

api.CSSUnparsedValue

api.CSSKeywordValue

Siehe auch