files/en-us/web/api/cssprimitivevalue/index.md
{{APIRef("CSSOM")}}{{deprecated_header}}
The CSSPrimitiveValue interface derives from the {{DOMxRef("CSSValue")}} interface and represents the current computed value of a CSS property.
[!NOTE] This interface was part of an attempt to create a typed CSS Object Model. This attempt has been abandoned, and most browsers do not implement it.
To achieve your purpose, you can use:
- the untyped CSS Object Model, widely supported, or
- the modern CSS Typed Object Model API, less supported and considered experimental.
This interface represents a single CSS value. It may be used to determine the value of a specific style property currently set in a block or to set a specific style property explicitly within the block. An instance of this interface might be obtained from the {{DOMxRef("CSSStyleDeclaration.getPropertyCSSValue()", "getPropertyCSSValue()")}} method of the {{DOMxRef("CSSStyleDeclaration")}} interface. A CSSPrimitiveValue object only occurs in a context of a CSS property.
Conversions are allowed between absolute values (from millimeters to centimeters, from degrees to radians, and so on) but not between relative values. (For example, a pixel value cannot be converted to a centimeter value.) Percentage values can't be converted since they are relative to the parent value (or another property value). There is one exception for color percentage values: since a color percentage value is relative to the range 0-255, a color percentage value can be converted to a number (see also the {{DOMxRef("RGBColor")}} interface).
{{InheritanceDiagram}}
Inherits properties from its parent, {{DOMxRef("CSSValue")}}.
: An unsigned short representing the type of the value. Possible values are:
| Constant | Description |
|---|---|
CSS_ATTR | The value is an {{CSSxRef("attr", "attr()")}} function. The value can be obtained by using the getStringValue() method. |
CSS_CM | The value is a {{CSSxRef("<length>")}} in centimeters. The value can be obtained by using the getFloatValue() method. |
CSS_COUNTER | The value is a counter or counters function. The value can be obtained by using the getCounterValue() method. |
CSS_DEG | The value is an {{CSSxRef("<angle>")}} in degrees. The value can be obtained by using the getFloatValue() method. |
CSS_DIMENSION | The value is a {{CSSxRef("<number>")}} with an unknown dimension. The value can be obtained by using the getFloatValue() method. |
CSS_EMS | The value is a {{CSSxRef("<length>")}} in em units. The value can be obtained by using the getFloatValue() method. |
CSS_EXS | The value is a {{CSSxRef("<length>")}} in ex units. The value can be obtained by using the getFloatValue() method. |
CSS_GRAD | The value is an {{CSSxRef("<angle>")}} in grads. The value can be obtained by using the getFloatValue() method. |
CSS_HZ | The value is a {{CSSxRef("<frequency>")}} in Hertz. The value can be obtained by using the getFloatValue method. |
CSS_IDENT | The value is an identifier. The value can be obtained by using the getStringValue() method. |
CSS_IN | The value is a {{CSSxRef("<length>")}} in inches. The value can be obtained by using the getFloatValue() method. |
CSS_KHZ | The value is a {{CSSxRef("<frequency>")}} in Kilohertz. The value can be obtained by using the getFloatValue() method. |
CSS_MM | The value is a {{CSSxRef("<length>")}} in millimeters. The value can be obtained by using the getFloatValue() method. |
CSS_MS | The value is a {{CSSxRef("<time>")}} in milliseconds. The value can be obtained by using the getFloatValue() method. |
CSS_NUMBER | The value is a simple {{CSSxRef("<number>")}}. The value can be obtained by using the getFloatValue() method. |
CSS_PC | The value is a {{CSSxRef("<length>")}} in picas. The value can be obtained by using the getFloatValue() method. |
CSS_PERCENTAGE | The value is a {{CSSxRef("<percentage>")}}. The value can be obtained by using the getFloatValue() method. |
CSS_PT | The value is a {{CSSxRef("<length>")}} in points. The value can be obtained by using the getFloatValue() method. |
CSS_PX | The value is a {{CSSxRef("<length>")}} in pixels. The value can be obtained by using the getFloatValue() method. |
CSS_RAD | The value is an {{CSSxRef("<angle>")}} in radians. The value can be obtained by using the getFloatValue() method. |
CSS_RECT | The value is a {{CSSxRef("shape", "rect()", "#Syntax")}} function. The value can be obtained by using the getRectValue() method. |
CSS_RGBCOLOR | The value is an {{CSSxRef("<color>")}}. The value can be obtained by using the getRGBColorValue() method. |
CSS_S | The value is a {{CSSxRef("<time>")}} in seconds. The value can be obtained by using the getFloatValue() method. |
CSS_STRING | The value is a {{CSSxRef("<string>")}}. The value can be obtained by using the getStringValue() method. |
CSS_UNKNOWN | The value is not a recognized CSS2 value. The value can only be obtained by using the {{DOMxRef("CSSValue.cssText", "cssText")}} attribute. |
CSS_URI | The value is a {{cssxref("url_value", "<url>")}}. The value can be obtained by using the getStringValue() method. |
This feature was originally defined in the DOM Style Level 2 specification, but has been dropped from any standardization effort since then.
It has been superseded by a modern, but incompatible, CSS Typed Object Model API that is now on the standard track.
{{Compat}}