currentStyle object
Represents the cascaded format and style of the object as specified by global style sheets, inline styles, and HTML attributes.
Members
The currentStyle object has these types of members:
Methods
The currentStyle object has these methods.
Method | Description |
---|---|
getAttribute |
Retrieves the value of the specified attribute. |
getExpression |
This element is obsolete and should no longer be used. Retrieves the expression for the given property. |
getPropertyPriority |
Gets the priority of a CSS property if the priority is explicitly set in the current declaration block. |
getPropertyValue |
Gets the value of a CSS property if it is explicitly set within the current declaration block. |
item |
Gets a property that has been explicitly set in the current declaration block. |
removeProperty |
Removes a CSS property if it is explicitly set within the current declaration block. |
setAttribute |
Sets the value of the specified attribute. |
setExpression |
This element is obsolete and should no longer be used. Sets an expression for the specified object. |
setProperty |
Sets a property value and priority within the current declaration block. |
Properties
The currentStyle object has these properties.
Property | Access type | Description |
---|---|---|
Sets or retrieves a string that indicates whether the object represents a keyboard shortcut. | ||
Read/write |
Specifies shorthand values that define animation properties for object properties identified in the @keyframes at-rule of the animations-name property. | |
Read/write |
Specifies the offset within an animation cycle (the amount of time from the start of a cycle) before the animation is displayed for a set of corresponding object properties identified in the CSS @keyframes at-rule specified by the animation-name property. | |
Read/write |
Specifies the direction of play for an animation cycle. | |
Read/write |
Specifies the length of time to complete one cycle of the animation. | |
Read/write |
Specifies whether the effects of an animation are visible before or after it plays. | |
Read/write |
Specifies the number of times an animation cycle is played. | |
Read/write |
Identifies one or more animation names. An animation name selects a CSS @keyframes at-rule. | |
Read/write |
Specifies whether an animation is playing or paused. | |
Read/write |
Specifies the intermediate property values to be used during a single cycle of an animation on a set of corresponding object properties identified in the CSS @keyframes at-rule specified by the animation-name property. | |
Read/write |
Gets or sets a value that specifies whether the back face (reverse side) of an object is visible. | |
Specifies up to five separate background properties of an object. | ||
Specifies how the background image (or images) is attached to the object within the document. | ||
Specifies the background painting area or areas relative to the element's bounding boxes. | ||
Specifies the color behind the content of the object. | ||
Specifies the background image or images of the object. | ||
Specifies the positioning area of an element or multiple elements. | ||
Specifies the position of the background of the object. | ||
Specifies the x-coordinate of the background-position property. | ||
Specifies the y-coordinate of the background-position property. | ||
Specifies whether and how the background image (or images) is tiled. | ||
Specifies the size of the background images. | ||
Sets or retrieves a value that indicates how the dominant baseline should be repositioned relative to the dominant baseline of the parent text content element. | ||
Sets or retrieves the location of the Dynamic HTML (DHTML) behaviorDHTML Behaviors. | ||
Gets a string value that indicates whether the content in the block element flows from left to right, or from right to left. | ||
Specifies the properties of a border drawn around an object. | ||
Specifies the properties of the bottom border of the object. | ||
Specifies the foreground color of the bottom border of an object. | ||
Specifies the radii of the quarter ellipse that defines the shape of the lower-left corner for the outer border edge of the current box. | ||
Sets or retrieves one or two values that define the radii of the quarter ellipse that defines the shape of the lower-right corner for the outer border edge of the current box. | ||
Specifies the style of the bottom border of the object. | ||
Specifies the thickness of the bottom border of the object. | ||
Indicates whether the row and cell borders of a table are joined in a single border or detached as in standard HTML. | ||
Specifies the border color of the object. | ||
Specifies the properties of the left border of the object. | ||
Specifies the foreground color of the left border of an object. | ||
Sets or retrieves the style of the left border of the object. | ||
Specifies the thickness of the left border of the object. | ||
Specifies the radii of a quarter ellipse that defines the shape of the corners for the outer border edge of the current box. | ||
Specifies the properties of the right border of the object. | ||
Specifies the foreground color of the right border of an object. | ||
Specifies the style of the right border of the object. | ||
Specifies the thickness of the right border of the object. | ||
Specifies the distance between the borders of adjoining cells in a table. | ||
Specifies the style of the left, right, top, and bottom borders of the object. | ||
Specifies the properties of the top border of the object. | ||
Specifies the foreground color of the top border of an object. | ||
Sets or retrieves one or two values that define the radii of the quarter ellipse that defines the shape of the upper-left corner for the outer border edge of the current box. | ||
Sets or retrieves one or two values that define the radii of the quarter ellipse that defines the shape of the upper-right corner for the outer border edge of the current box. | ||
Specifies the style of the top border of the object. | ||
Specifies the thickness of the top border of the object. | ||
Specifies the thicknesses of the left, right, top, and bottom borders of an object. | ||
Sets or retrieves the bottom position of the object in relation to the bottom of the next positioned object in the document hierarchy. | ||
Specifies one or more set of shadow values that attaches one or more drop shadows to the current box. | ||
Specifies the box model to use for object sizing. | ||
Read/write |
Gets or sets the column-break behavior that follows a content block in a multi-column element. | |
Read/write |
Gets or sets the column-break behavior that precedes a content block in a multi-column element. | |
Read/write |
Gets or sets the column-break behavior that occurs within a content block in a multi-column element. | |
Specifies whether the object allows floating objects on its left side, right side, or both, so that the next text displays past the floating objects. | ||
Read/write |
Specifies which part of a positioned object is visible. | |
Gets the bottom coordinate of the object clipping region. | ||
Gets the left coordinate of the object clipping region. | ||
Sets or retrieves a reference to the SVG graphical object that will be used as the clipping path. | ||
Gets the right coordinate of the object clipping region. | ||
Read-only |
Gets the top coordinate of the object clipping region. | |
The foreground color of the text of an object. | ||
Read/write |
Gets or sets the optimal number of columns in a multi-column element. | |
Read/write |
Gets or sets a value that indicates how the column lengths in a multi-column element are affected by the content flow. | |
Read/write |
Gets or sets the width of the gap between columns in a multi-column element. | |
Read/write |
Gets or sets a shorthand value that specifies values for the columnRuleWidth, columnRuleStyle, and the columnRuleColor of a multi-column element. | |
Read/write |
Gets or sets the color for all column rules in a multi-column element. | |
Read/write |
Gets or sets the style for all column rules in a multi-column element. | |
Read/write |
Gets or sets the width of all column rules in a multi-column element. | |
Read/write |
Gets or sets the number of columns that a content block spans in a multi-column element. | |
Read/write |
Gets or sets the optimal width of the columns in a multi-column element. | |
Returns a reference to the constructor of an object. | ||
Specifies generated content to insert before or after an element. | ||
Sets or retrieves a list of counters to increment. | ||
Sets or retrieves a list of counters to create or reset to zero. | ||
Sets or retrieves a value that specifies whether a box should float to the left, right, or not at all. | ||
Read/write |
Sets or retrieves the persisted representation of the style rule. | |
Specifies the type of cursor to display as the mouse pointer moves over the object. | ||
Specifies the reading order of the object. | ||
Gets or sets a value that indicates whether and how the object is rendered. | ||
Sets or retrieves a value that determines or redetermines a scaled-baseline table. | ||
Determines whether to show or hide a cell without content. | ||
Sets or retrieves a value that indicates the color to paint the interior of the given graphical element. | ||
Sets or retrieves a value that specifies the opacity of the painting operation that is used to paint the interior of the current object. | ||
Sets or retrieves a value that indicates the algorithm that is to be used to determine what parts of the canvas are included inside the shape. | ||
Sets or retrieves the filter or collection of filters that are applied to the object. | ||
Specifies a combination of separate font properties of the object. Alternatively, sets or retrieves one or more of six user-preference fonts. | ||
Specifies the name of the font used for text in the object. | ||
Specifies a value that indicates the font size used for text in the object. | ||
Specifies a value that indicates a normal, condensed, or expanded face of a font family. | ||
Specifies the font style of the object as italic, normal, or oblique. | ||
Specifies whether the text of the object is in small capital letters. | ||
Gets the numeric weight of the font of the object. | ||
Specifies the weight of the font of the object. | ||
Sets or retrieves a value that alters the orientation of a sequence of characters relative to an inline-progression-direction of horizontal. | ||
Sets or retrieves a value that alters the orientation of a sequence of characters relative to an inline-progression-direction of vertical. | ||
Gets a value that indicates whether the object has layout. | ||
Sets or retrieves the height of the object. | ||
Specifies the state of an IME. | ||
Gets or sets a value that indicates whether Internet Explorer should adjust inter-glyph spacing based on kerning tables that are included in the relevant font (that is, enable auto-kerning) or instead disable auto-kerning and set inter-character spacing to a specific length (typically zero). | ||
Specifies the direction and flow of the content in the object. | ||
Specifies the composite document grid properties that specify the layout of text characters. | ||
Specifies the size of the character grid used for rendering the text content of an element. | ||
Specifies the gridline value used for rendering the text content of an element. | ||
Specifies whether the text layout grid uses two dimensions. | ||
Specifies the type of grid used for rendering the text content of an element. | ||
Sets or retrieves the position of the object relative to the left edge of the next positioned object in the document hierarchy. | ||
Retrieves the number of properties that are explicitly set on the parent object. | ||
Specifies the amount of additional space between letters in the object. | ||
Specifies line-breaking rules for text in selected languages such as Japanese, Chinese, and Korean. | ||
Sets or retrieves the distance between lines in the object. | ||
Sets or retrieves up to three separate list-style properties of the object. | ||
Sets or retrieves a value that indicates which image to use as a list-item marker for the object. | ||
Sets or retrieves a variable that indicates how the list-item marker is drawn relative to the content of the object. | ||
Sets or retrieves the predefined type of the line-item marker for the object. | ||
Sets or retrieves the width of the top, right, bottom, and left margins of the object. | ||
Sets or retrieves the height of the bottom margin of the object. | ||
Sets or retrieves the width of the left margin of the object. | ||
Sets or retrieves the width of the right margin of the object. | ||
Sets or retrieves the height of the top margin of the object. | ||
Sets or retrieves a value that specifies the marker symbol that is used for all vertices on the given path element or basic shape. | ||
Sets or retrieves a value that defines the arrowhead or polymarker that is drawn at the final vertex of a given path element or basic shape. | ||
Sets or retrieves a value that defines the arrowhead or polymarker that is drawn at every other vertex (that is, every vertex except the first and last) of a given path element or basic shape. | ||
Sets or retrieves a value that defines the arrowhead or polymarker that is drawn at the first vertex of a given path element or basic shape. | ||
Sets or retrieves a value that indicates a SVG mask. | ||
Sets or retrieves the maximum height for an element. | ||
Sets or retrieves the maximum width for an element. | ||
Specifies the minimum height for an element. | ||
Sets or retrieves the minimum width for an element. | ||
Specifies the block progression and layout orientation. | ||
Read/write |
Gets or sets a value that specifies in which column of the grid to place the object. | |
Read/write |
Gets or sets a value that specifies the horizontal alignment of the object within the grid column. | |
Read/write |
Gets or sets one or more values that specify the width of each grid column within the object. | |
Read-only |
Gets or sets a value that specifies the number of columns of the grid that the object spans. | |
Read/write |
Gets or sets a value that specifies in which row of the grid to place the object. | |
Read/write |
Gets or sets a value that specifies the vertical alignment of the object within the grid row. | |
Read/write |
Gets or sets one or more values that specify the height of each grid row within the object. | |
Read/write |
Gets or sets a value that specifies the number of rows of the grid that the object spans. | |
Read/write |
This property is obsolete. Use animation-name instead. | |
Gets or sets a value that specifies object or group opacity in CSS or SVG. | ||
Sets or retrieves the minimum number of lines of a paragraph that must appear at the bottom of a page. | ||
Specifies the color, style, and width of the outline frame. | ||
Specifies the color of the outline frame. | ||
Specifies the style of the outline frame. | ||
Specifies the width of the outline frame. | ||
Sets or retrieves a value indicating how to manage the content of the object when the content exceeds the height or width of the object. | ||
Sets or retrieves how to manage the content of the object when the content exceeds the width of the object. | ||
Sets or retrieves how to manage the content of the object when the content exceeds the height of the object. | ||
Sets or retrieves the amount of space to insert between the object and its margin or, if there is a border, between the object and its border. | ||
Sets or retrieves the amount of space to insert between the bottom border of the object and the content. | ||
Sets or retrieves the amount of space to insert between the left border of the object and the content. | ||
Sets or retrieves the amount of space to insert between the right border of the object and the content. | ||
Sets or retrieves the amount of space to insert between the top border of the object and the content. | ||
Sets or retrieves a value indicating whether a page break occurs after the object. | ||
Defines whether a page break occurs before the object. | ||
Sets or retrieves a string indicating whether a page break is allowed to occur inside the object. | ||
Retrieves the containing rule, if the current rule is contained inside another rule. | ||
Read/write |
Gets or sets a value that represents the perspective from which all child elements of the object are viewed. | |
Read/write |
Gets or sets one or two values that represent the origin (the vanishing point for the 3-D space) of an object with an perspective property declaration. | |
Sets or retrieves a value that specifies under what circumstances a given graphics element can be the target element for a pointer event in SVG. Starting with IE11, this property also has basic support for HTML elements (see "Remarks" section). | ||
Sets or retrieves the type of positioning used for the object. | ||
Sets or retrieves the pairs of strings to be used as quotes in generated content. | ||
Sets or retrieves the position of the object relative to the right edge of the next positioned object in the document hierarchy. | ||
Gets or sets a value that indicates how to align the ruby text content. | ||
Gets or sets a value that indicates whether, and on which side, ruby text is allowed to partially overhang any adjacent text in addition to its own base, when the ruby text is wider than the ruby base | ||
Gets or sets a value that controls the position of the ruby text with respect to its base. | ||
Specifies the color of the top and left edges of the scroll box and scroll arrows of a scroll bar. | ||
Specifies the color of the arrow elements of a scroll arrow. | ||
Specifies the base color of the main elements of a scroll bar. | ||
Specifies the color of the gutter of a scroll bar. | ||
Specifies the color of the scroll box and scroll arrows of a scroll bar. | ||
Specifies the color of the slider tray, and the top and left edges of the scroll box and scroll arrows of a scroll bar. | ||
Specifies the color of the bottom and right edges of the scroll box and scroll arrows of a scroll bar. | ||
Specifies the color of the track element of a scroll bar. | ||
Sets or retrieves a value that indicates what color to use at the current gradient stop. | ||
Sets or retrieves a value that defines the opacity of the current gradient stop. | ||
Sets or retrieves a value that indicates the color to paint along the outline of a given graphical element. | ||
Sets or retrieves one or more values that indicate the pattern of dashes and gaps used to stroke paths. | ||
Sets or retrieves a value that specifies the distance into the dash pattern to start the dash. | ||
Sets or retrieves a value that specifies the shape to be used at the end of open subpaths when they are stroked. | ||
Sets or retrieves a value that specifies the shape to be used at the corners of paths or basic shapes when they are stroked. | ||
Sets or retrieves a value that indicates the limit on the ratio of the length of miter joins (as specified in the strokeLinejoin property). | ||
Sets or retrieves a value that specifies the opacity of the painting operation that is used to stroke the current object. | ||
Sets or retrieves a value that specifies the width of the stroke on the current object. | ||
Sets or retrieves on which side of the object the text will flow. | ||
Sets or retrieves a string that indicates whether the table layout is fixed. | ||
Specifies whether the text in the object is left-aligned, right-aligned, centered, or justified. | ||
Specifies a value that indicates how to align the last line or only line of text in the specified object. | ||
Specifies the autospacing and narrow space width adjustment of text. | ||
Specifies a value that indicates whether the text in the object has blink, line-through, overline, or underline decorations. | ||
Specifies the indentation of the first line of text in the object. This property is not supported for Windows Store apps using JavaScript. | ||
Specifies the type of alignment used to justify text in the object. | ||
Deprecated. Specifies the ratio of kashida expansion to white space expansion when justifying lines of text in the object. | ||
Specifies a value that indicates whether to render ellipses (...) to indicate text overflow. | ||
Specifies the rendering of the text in the object. | ||
Specifies the position of the underline decoration that is set through the text-decoration property of the object. | ||
Sets or retrieves the position of the object relative to the top of the next positioned object in the document hierarchy. | ||
Read/write |
Gets or sets a list of one or more transform functions that specify how to translate, rotate, or scale an element in 2-D or 3-D space. | |
Read/write |
Gets or sets one or two values that establish the origin of transformation for an element. | |
Read/write |
Gets or sets a value that specifies how child elements of the object are rendered in 3-D space. | |
Read/write |
Gets or sets one or more shorthand values that specify the transition properties for a set of corresponding object properties identified in the transition-property property. | |
Read/write |
Gets or sets one or more values that specify the offset within a transition (the amount of time from the start of a transition) before the transition is displayed for a set of corresponding object properties identified in the transition property. | |
Read/write |
Gets or sets one or more values that specify the durations of transitions on a set of corresponding object properties identified in the transition-property property. | |
Read/write |
Gets or sets a value that identifies the CSS property name or names to which the transition effect (defined by the transition-duration, transition-timing-function, and transition-delay properties) is applied when a new property value is specified. | |
Read/write |
Gets or sets one or more values that specify the intermediate property values to be used during a transition on a set of corresponding object properties identified in the transition-property property. | |
Read/write |
Specifies the level of embedding with respect to the bidirectional algorithm. | |
Sets or retrieves the vertical alignment of the object. | ||
Sets or retrieves whether the content of the object is displayed. | ||
Specifies a value that indicates whether lines are automatically broken inside the object. | ||
Sets or retrieves the minimum number of lines of a paragraph that must appear at the top of a document. | ||
Specifies the width of the object. | ||
Specifies line-breaking behavior within words, particularly where multiple languages appear in the object. | ||
Specifies the amount of additional space between words in the object. | ||
Specifies whether to break words when the content exceeds the boundaries of its container. | ||
Specifies the direction and flow of the content in the object. | ||
Sets or retrieves the stacking order of positioned objects. | ||
Specifies the magnification scale of the object. |
Standards information
There are no standards that apply here.
Remarks
The currentStyle object returns the cascaded styles on an element, but the style object returns only the styles that have been applied inline on an element through the style attribute. Thus, the style values retrieved through the currentStyle object might differ from the style values retrieved through the style object. For example, if the color property is set on a paragraph only through a linked or embedded style sheet, and not inline, then object.currentStyle.color returns the color, whereas object.style.color does not return a value. If, however, the author specifies <p style="color:'red'", the currentStyle and style objects return the value .
The currentStyle object reflects the order of style precedence in CSS. The CSS order of precedence for the presentation of HTML is:
- Inline styles
- Style sheet rules
- Attributes on HTML tags
- Intrinsic definition of the HTML tag
Accordingly, the currentStyle object returns the fontWeight value normal on a bold tag if normal is specified in a style sheet.
The currentStyle object returns values that reflect the applied style settings for the page and might not reflect what is rendering at the time a value is retrieved. For example, an object that has "color:red; display:none"
returns currentStyle.color as even though the object is not rendered on the page. The currentStyle object, then, is not affected by the rendering constraints. The third example in the Example section demonstrates this behavior. Disabled style sheets also do not affect currentStyle values.
The returned value is in the same units as those used to set the object. For example, if the color of an object is set inline using style="color:'green'"
, then currentStyle.color returns and not #00FF00
(the red-green-blue hexadecimal equivalent to green). However, capitalization and redundant white space that appear in the object values set by the author are lost when the currentStyle object returns the object values.
The currentStyle object supports user-defined properties in style rules. See the second example in the Example section.
The currentStyle object is asynchronous. This means a style cannot be set and then immediately queried—instead, the old value is returned. Thus, for a script to obtain the expected behavior of currentStyle with methods such as addImport, the script needs to include a function that calls the method and a function that checks currentStyle. For a script to check the current style while a page is loading, the script must wait until the body element is loaded and the page has rendered, or the value of currentStyle might not reflect what is being displayed.
Windows Internet Explorer 8 or later. The behavior of the setAttribute method and the default value of the zIndex property varies according to the current document compatibility mode. For more information, see Attribute Differences in Internet Explorer 8 and Defining Document Compatibility.
Examples
This example uses the currentStyle object to set the text color to brown. If you click a colored area and the background color is the same as the text color, the checkColor function changes the background color, allowing the text to be visible. Otherwise, the function takes no action.
This example works only if the body and text colors are set using either color names or red-green-blue hexadecimal values, but not a mix of the two.
Code example: http://samples.msdn.microsoft.com/workshop/samples/author/dhtml/refs/currentStyle_backgroundColor.htm
<head> <script> function checkColor(oObj) { if (oObj.currentStyle.backgroundColor == 'brown') { oObj.style.backgroundColor = 'white'; } else : } </script> </head> : <p style="background-color: 'brown'" onclick="checkColor(this)">Click me</p>
This example uses the currentStyle object to retrieve values of the user-defined property created in the style rule. The alert returns the value myvalue
.
Code example: http://samples.msdn.microsoft.com/workshop/samples/author/dhtml/refs/currentStyle2.htm
<style> p { myproperty:myvalue } </style> <body> <p id="oPrgrph" /> : <script> console.log(oPrgrph.currentStyle.myproperty); </script>
This example shows that the td object width returned by the currentStyle object is its cascaded width value rather than the width rendered on the screen. Open the F12 developer tools and click Console before running this example.
Code example: http://samples.msdn.microsoft.com/workshop/samples/author/dhtml/refs/currentStyle_table.htm
<!DOCTYPE html> <html> <head> <title>Style</title> <style> td { border: 1px solid black; width: 1100px; } </style> </head> <body id="idBody"> <p>The table will be rendered within the window regardless of the size of the window. However, the <strong>currentStyle</strong>.width of the <strong>td</strong> object will return the cascaded value (1100px) rather than the rendered value.</p> <table> <tr> <td id="oID_1">text</td> </tr> </table> <script> var oID_1 = document.getElementById('oID_1'); var idBody = document.getElementById('idBody'); console.log("The TD object width is " + oID_1.currentStyle.width + ".\nThe width of the window is " + idBody.clientWidth + "px.\nThe width of the screen is " + screen.width + "px."); </script> </body> </html>
See also