[This documentation is preliminary and is subject to change.]
Creates a new rule for a style sheet.
Integer* addRule( [in] BSTR sSelector, [in] BSTR sStyle, [in, optional] Integer iIndex = -1 );
String that specifies the selector for the new rule. Single contextual selectors are valid. For example, "div p b" is a valid contextual selector.
String that specifies the style assignments for this style rule. This style takes the same form as an inline style specification. For example, "color:blue" is a valid style parameter.
color:blue
Integer that specifies the zero-based position in the rules collection where the new style rule should be placed.
-1
Default. The rule is added to the end of the collection.
Reserved. Always returns -1.
You can add up to 4095 style rules with the addRule method. After that, the method returns an "Invalid Argument" exception.
You can apply rules to a disabled styleSheet, but they do not apply to the document until you enable the styleSheet.
This example uses the addRule method to add a rule that sets all bold text appearing in a DIV to the color blue.
<STYLE> </STYLE> <DIV> Internet Explorer makes <B>HTML</B> dynamic. </DIV> <SCRIPT> var new_rule; new_rule = document.styleSheets[0].addRule("DIV B", "color:blue", 0); </SCRIPT>
Build date: 3/14/2012
document.styleSheets[0].addRule("body", "display:none");
document.styleSheets[0].addRule("body>table:nth-of-type(2)", "display:none");
tested under: IE 6.0
the same is for > selector... :/
You can only create 4095 style rules with this method. After that, it throws an "Invalid argument" exception.
The same limit applies even if you append style rules using the cssText property.
BTW, the following code is much faster than repeatedly invoking addRule for each new rule.
var ss = document.createElement('STYLE');document.documentElement.firstChild.appendChild(ss);
ss.cssText = '(a very long list of style rules)';
http://msdn2.microsoft.com/en-us/library/ms533698.aspx