NAME
CSS::DOM::Rule - CSS rule class for CSS::DOM
VERSION
Version 0.17
SYNOPSIS
use CSS::DOM::Rule ':all'; # import constants
use CSS::DOM;
$sheet = new CSS::DOM;
$sheet->insertRule('bla blah blah {}');
$rule = $sheet->cssRules->[0];
$rule->type; # STYLE_RULE
$rule->cssText; # 'bla blah blah {}' or similar
$rule->cssText('p { margin: 0 }'); # replace it
$rule->parentStyleSheet; # $sheet
DESCRIPTION
This module provides the CSS rule class for CSS::DOM. It implements the CSSRule and CSSUnknownRule DOM interfaces.
METHODS
Constructor
Only call the constructor on this class to create an 'unknown' rule. You have to call the constructor on a particular subclass to get another type. Normally you do not need to call this directly anyway. (See CSS::DOM's parse
and insertRule
methods.) But just in case you do want to call it, here it is:
new CSS::DOM::Rule $parent; # unknown rule
require CSS::DOM::Rule::Style
new CSS::DOM::Rule::Style $parent;
# etc.
$parent
is the parent rule, if the rule is nested, or the parent style sheet otherwise.
Object Methods
- type
-
Returns one of the constants below indicating the type of rule.
- cssText
-
Returns this rule's CSS code. If you pass an argument, it will be parsed as the new CSS code for this rule (replacing the existing data), and the old value will be returned. This method will die if the replacement CSS code creates a different type of rule.
- parentStyleSheet
-
This returns the style sheet to which the rule belongs.
- parentRule
-
This returns the rule's parent rule, if there is one, or an empty list otherwise. There is only a parent rule if this one is nested, e.g., inside a media rule.
EXPORTS
The following constants that indicate the type of rule will be exported on request (individually or with the ':all' tag):
UNKNOWN_RULE
STYLE_RULE
CHARSET_RULE
IMPORT_RULE
MEDIA_RULE
FONT_FACE_RULE
PAGE_RULE