<?xml version="1.0" encoding="UTF-8"?> <!-- $Date: 2001-06-01 13:15:37 +0200 (Fri, 01 Jun 2001) $ $Revision: 225913 $ --> <!-- ************************************************************************* * BEGINNING OF LEVEL TWO CSS * ************************************************************************* --> <div1 id="CSS"> <head>Document Object Model CSS</head> <orglist role="editors"> <member> <name>Chris Wilson</name> <affiliation>Microsoft Corp.</affiliation> </member> <member> <name>Philippe Le Hégaret</name> <affiliation>W3C</affiliation> </member> <member> <name>Vidur Apparao</name> <affiliation>Netscape Communications Corp.</affiliation> </member> </orglist> <?GENERATE-MINI-TOC?> <!-- ****************************************************** | INTRODUCTION | ****************************************************** --> <div2 id="CSS-overview"> <head>Overview of the DOM Level 2 CSS Interfaces</head> <p> The DOM Level 2 Cascading Style Sheets (<loc href="&CSS;">CSS</loc>) interfaces are designed with the goal of exposing CSS constructs to object model consumers. Cascading Style Sheets is a declarative syntax for defining presentation rules, properties and ancillary constructs used to format and render Web documents. This document specifies a mechanism to programmatically access and modify the rich style and presentation control provided by CSS (specifically CSS level 2 <bibref ref='CSS2'/>). This augments CSS by providing a mechanism to dynamically control the inclusion and exclusion of individual style sheets, as well as manipulate CSS rules and properties. </p> <p> The CSS interfaces are organized in a logical, rather than physical structure. A collection of all style sheets referenced by or embedded in the document is accessible on the document interface. Each item in this collection exposes the properties common to all style sheets referenced or embedded in HTML and XML documents; this interface is described in the <specref ref="StyleSheets"/>. User style sheets are not accessible through this collection, in part due to potential privacy concerns (and certainly read-write issues). </p> <p> For each CSS style sheet, an additional interface is exposed - the <code>CSSStyleSheet</code> interface. This interface allows access to the collection of rules within a CSS style sheet and methods to modify that collection. Interfaces are provided for each specific type of rule in CSS2 (e.g. style declarations, <code>@import</code> rules, or <code>@font-face</code> rules), as well as a shared generic <code>CSSRule</code> interface. </p> <p> The most common type of rule is a style declaration. The <code>CSSStyleRule</code> interface that represents this type of rule provides string access to the CSS selector of the rule, and access to the property declarations through the <code>CSSStyleDeclaration</code> interface. </p> <p> Finally, an optional <code>CSS2Properties</code> interface is described; this interface (if implemented) provides shortcuts to the string values of all the properties in CSS level 2. </p> <p> All CSS objects in the DOM are "live", that is, a change in the style sheet is reflected in the computed and actual style. </p> </div2> <div2 id="CSS-fundamental"> <head>CSS Fundamental Interfaces</head> <p> The interfaces within this section are considered fundamental CSS interfaces, and must be supported by all conforming implementations of the CSS module. These interfaces represent CSS style sheets specifically. </p> <p> A DOM application may use the <code>hasFeature(feature, version)</code> method of the <code>DOMImplementation</code> interface with parameter values "CSS" and "2.0" (respectively) to determine whether or not this module is supported by the implementation. In order to fully support this module, an implementation must also support the "Core" feature defined defined in the DOM Level 2 Core specification <bibref ref="DOMCore"/> and the "Views" feature defined in the DOM Level 2 Views specification <bibref ref="DOMViews"/>. Please refer to additional information about <xspecref href='&core.latest.url;/introduction.html#ID-Conformance'>conformance</xspecref> in the DOM Level 2 Core specification <bibref ref="DOMCore"/>. </p> <definitions> &css-cssstylesheet; &css-cssrulelist; &css-cssrule; &css-cssstylerule; &css-cssmediarule; &css-cssfontfacerule; &css-csspagerule; &css-cssimportrule; &css-csscharsetrule; &css-cssunknownrule; &css-cssstyledeclaration; &css-cssvalue; &css-cssprimitivevalue; &css-cssvaluelist; &css-rgbcolor; &css-rect; &css-counter; </definitions> <div3 id="CSS-OverrideAndComputed"> <head>Override and computed style sheet</head> <definitions> &css-viewcss; &css-documentcss; </definitions> </div3> <div3 id="CSS-StyleSheetCreation"> <head>Style sheet creation</head> <definitions> &css-domimplementationcss; </definitions> </div3> <div3 id="CSS-htmlelementcss"> <head>Element with CSS inline style</head> <definitions> &css-elementcssinlinestyle; </definitions> </div3> </div2> <div2 id="CSS-extended"> <head>CSS2 Extended Interface</head> <p> The interface found within this section are not mandatory. A DOM application may use the <code>hasFeature(feature, version)</code> method of the <code>DOMImplementation</code> interface with parameter values "CSS2" and "2.0" (respectively) to determine whether or not this module is supported by the implementation. In order to fully support this module, an implementation must also support the "CSS" feature defined defined in <specref ref="CSS-fundamental"/>. Please refer to additional information about <xspecref href='&core.latest.url;/introduction.html#ID-Conformance'>conformance</xspecref> in the DOM Level 2 Core specification <bibref ref="DOMCore"/>. </p> <definitions> &css-css2properties; </definitions> </div2> </div1> <!-- ************************************************************************* * END OF LEVEL TWO CSS * ************************************************************************* -->