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

Eingeschränkt verfügbar

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

Die CSS Typed Object Model API vereinfacht die Manipulation von CSS-Eigenschaften, indem CSS-Werte als typisierte JavaScript-Objekte anstatt als Strings dargestellt werden. Dies vereinfacht nicht nur die CSS-Manipulation, sondern verringert auch den negativen Leistungseinfluss im Vergleich zu HTMLElement.style.

In der Regel können CSS-Werte in JavaScript als Zeichenketten gelesen und geschrieben werden, was langsam und mühsam sein kann. Die CSS Typed Object Model API bietet Schnittstellen, um mit den zugrundeliegenden Werten zu interagieren, indem sie diese mit spezialisierten JS-Objekten darstellt, die einfacher und zuverlässiger manipuliert und verstanden werden können als durch das Parsen und Zusammensetzen von Strings. Dies ist für die Autoren einfacher (zum Beispiel werden numerische Werte mit tatsächlichen JS-Zahlen reflektiert und es sind einheitenbewusste mathematische Operationen für sie definiert). Es ist auch allgemein schneller, da Werte direkt manipuliert und dann kostengünstig in die zugrundeliegenden Werte zurückübersetzt werden können, ohne dass zuerst CSS-Strings erstellt und dann geparst werden müssen.

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

Schnittstellen

CSSStyleValue

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

CSSStyleValue.parse()

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

CSSStyleValue.parseAll()

Methode, die alle Vorkommen einer bestimmten CSS-Eigenschaft auf den angegebenen Wert setzt und ein Array von CSSStyleValue-Objekten zurückgibt, wobei jedes ein geliefertes Wert enthält.

StylePropertyMap

Die StylePropertyMap-Schnittstelle der CSS Typed Object Model API bietet eine Darstellung eines CSS-Deklarationsblocks, der eine Alternative zu CSSStyleDeclaration darstellt.

StylePropertyMap.set()

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

StylePropertyMap.append()

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

StylePropertyMap.delete()

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

StylePropertyMap.clear()

Methode, die alle Deklarationen in der StylePropertyMap entfernt.

CSSUnparsedValue

Die CSSUnparsedValue-Schnittstelle der CSS Typed Object Model API stellt Eigenschaftswerte dar, die auf benutzerdefinierte Eigenschaften verweisen. Sie besteht aus einer Liste von String-Fragmenten 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 Eigenschafts-[key, value]-Paare eines gegebenen Objekts in der gleichen Reihenfolge wie in einer for...in-Schleife zurückgibt (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

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

CSSKeywordValue()-Konstruktor

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

CSSKeywordValue.value()

Eigenschaft der CSSKeywordValue-Schnittstelle, 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 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 sie dort verwendet wird, wo ein String erwartet wird, gibt sie den Wert von CSSKeyword.value zurück.

CSSMathValue

Ein Baum von Unterklassen, die numerische Werte repräsentieren, die komplizierter sind als ein einzelner Wert und eine Einheit, einschließlich:

CSSNumericValue

Eine Schnittstelle, die Operationen darstellt, die alle numerischen Werte ausführen können, einschließlich:

CSSPositionValue

Repräsentiert Werte für Eigenschaften, die eine Position annehmen, zum Beispiel object-position.

CSSTransformValue

Eine Schnittstelle, die eine Liste von transform-Listenwerten darstellt. Sie "enthält" ein oder mehrere CSSTransformComponents, die einzelne transform-Funktionswerte repräsentieren.

CSSUnitValue

Eine Schnittstelle, die numerische Werte darstellt, die als eine einzelne Einheit oder eine benannte Zahl und Prozentsatz dargestellt werden können.

CSSUnparsedValue

Repräsentiert Eigenschaftswerte, die auf benutzerdefinierte Eigenschaften verweisen. Sie besteht aus einer Liste von String-Fragmenten und Variablenreferenzen.

Spezifikationen

Spezifikation
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