cssRule, CSSRule, rule | NN 6 IE 5 DOM 2 | |||||||||||
Ein Stylesheet-Regelobjekt gehört zur Sammlung der im Dokument enthaltenen styleSheet-Objekte. Im IE- und im W3C-DOM werden für Verweise auf diese Regelobjekte unterschiedliche Syntaxformate verwendet. Bei IE werden sie über die rules-Sammlung (das so genannte rule-Objekt), bei der W3C-Implementierung von Netscape 6 und IE 5/Macintosh über die cssRules-Sammlung (das so genannte cssRule-Objekt) referenziert. Beachten Sie, dass das cssRule-Objekt in IE 6 für Windows noch nicht implementiert ist. |
||||||||||||
Das entsprechende W3C-DOM-Abstraktobjekt wird als CSSRule-Objekt bezeichnet, doch diese Form des Objektnamens ist nur für Skriptersteller von Bedeutung, die die Prototyp-Eigenschaften und -Methoden des CSSRule-Objekts in Netscape 6 ändern möchten. Das W3C-DOM definiert zusätzlich spezielle CSSRule-Objekttypen für die einzelnen @-Regeltypen (CSSImportRule, CSSMediaRule usw.). Ein Mitglied der cssRules-Sammlung kann jeden beliebigen dieser Typen aufweisen, der durch seine type-Eigenschaft angegeben wird. Jeder Typ weist eigene Eigenschaften und/oder Methoden auf, die für diesen cssRule-Typ gelten. Beachten Sie in der unten stehenden Liste, auf welche Typen die einzelnen Eigenschaften und Methoden jeweils anwendbar sind. Im Großen und Ganzen gehören die Inline-Regeln, die Sie in Ihren Skripts verwenden werden, jedoch zum Typ CSSStyleRule. |
||||||||||||
Seien Sie besonders vorsichtig, wenn Sie in einem Skript auf ein rule- oder cssRule-Objekt zugreifen. Änderungen, die Sie am Selektor oder an der Stildefinition einer Regel vornehmen, wirken sich auf das gesamte Dokument aus und können unter Umständen, zum Beispiel wenn Sie einen Doppelpunkt falsch setzen, andere im Dokument verwendete Regeln unbrauchbar machen. Wenn Sie zwischen verschiedenen Stilen für ein Element, eine Klasse oder einen Elementtyp wechseln möchten, ist es in der Regel sicherer und effizienter, andere Techniken zu verwenden, die in Verbindung mit mehreren Regeln oder Stylesheets funktionieren (z. B. className-Zuweisungen oder -Elemente vertauschen bzw. styleSheet-Objekte aktivieren und deaktivieren). Der Vollständigkeit des Objektmodells halber können Sie jedoch insbesondere beim W3C-DOM uneingeschränkt auf Teile der Stylesheet-Regeln zugreifen, wenn dies unbedingt erforderlich ist. |
||||||||||||
Objektmodellreferenz | ||||||||||||
document.styleSheets[i].rules[j] document.styleSheets[i].cssRules[j] |
||||||||||||
Objektspezifische Eigenschaften | ||||||||||||
|
||||||||||||
Objektspezifische Methoden | ||||||||||||
|
||||||||||||
Objektspezifische Ereignisbehandlungsroutineneigenschaften | ||||||||||||
Keine. |
cssRules | NN 6 IE nicht zutreffend DOM 2 |
Schreibgeschützt | |
Gibt eine Sammlung der cssRule-Objekte zurück, die in einer @media-Regel verschachtelt sind. |
|
Wert | |
Referenz auf ein Objekt in der cssRule-Sammlung. |
|
Standardwert | |
Array mit der Länge Null. |
|
W3C-DOM-CSSRule-Typen | |
CSSMediaRule |
cssText | NN 6 IE 5(Mac) DOM 2 |
Lesen/Schreiben | |
Gibt den gesamten Text der Stylesheet-Regel an, einschließlich Selektor und Attributnamens-/Wertpaare in geschweiften Klammern. IE 6 für Windows stellt keine äquivalente Eigenschaft bereit. In Browsern, die diese Eigenschaft unterstützen, haben Änderungen keine Auswirkung auf das Objekt oder seine Darstellung. |
|
Beispiel | |
document.styleSheets[0].cssRules[2].cssText = "td {text-align:center}"; |
|
Wert | |
Zeichenfolge. |
|
Standardwert | |
Keiner. |
|
W3C-DOM-CSSRule-Typen | |
Alle. |
encoding | NN 6 IE nicht zutreffend DOM 2 |
Schreibgeschützt | |
Gibt den Zeichensatzcode zurück (z. B. ISO-8859-1 oder UTF-8), der mit einer @charset-Regel verknüpft ist. |
|
Wert | |
Zeichenfolge. |
|
Standardwert | |
Keiner. |
|
W3C-DOM-CSSRule-Typen | |
CSSCharsetRule |
href | NN 6 IE nicht zutreffend DOM 2 |
Schreibgeschützt | |
Gibt die URI der externen Stylesheet-Datei zurück, die über eine @import-Regel importiert wird. |
|
Wert | |
Zeichenfolge. |
|
Standardwert | |
Keiner. |
|
W3C-DOM-CSSRule-Typen | |
CSSImportRule |
media | NN 6 IE nicht zutreffend DOM 2 |
Schreibgeschützt | |
Gibt den Medientyp zurück, der für eine @import- oder @media-Regel angegeben ist. |
|
Wert | |
Zeichenfolgenkonstante, die die vom Browser unterstützten Medientypen angibt (z. B. screen oder print). |
|
Standardwert | |
all |
|
W3C-DOM-CSSRule-Typen | |
CSSImportRule CSSMediaRule |
parentRule | NN 6 IE nicht zutreffend DOM 2 |
Schreibgeschützt | |
Verweist auf das cssRule-Objekt, das die aktuelle cssRule enthält, beispielsweise eine in einer @-Regel verschachtelte Regel. Der Zugriff auf diesen Eigenschaftswert kann bei Netscape 6.2 zum Absturz führen. |
|
Beispiel | |
var superRule = document.styleSheets[0].cssRules[1].parentRule; |
|
Wert | |
cssRule-Objektreferenz. |
|
Standardwert | |
null |
|
W3C-DOM-CSSRule-Typen | |
Alle. |
parentStyleSheet | NN 6 IE 5(Mac) DOM 2 |
Schreibgeschützt | |
Verweist auf das styleSheet-Objekt, das die aktuelle cssRule enthält. Ermöglicht die Bereitstellung einer Funktion, der eine Referenz auf ein cssRule-Objekt übergeben wird und die daraufhin eine Referenz auf das übergeordnete styleSheet-Objekt dieses Objekts zurückgibt, etwa um festzustellen, welche sonstigen Objekte in diesem Stylesheet enthalten sind. |
|
Beispiel | |
var ss = document.styleSheets[0].cssRules[3].parentStyleSheet; |
|
Wert | |
styleSheet-Objektreferenz. |
|
Standardwert | |
Aktuelles Objekt. |
|
W3C-DOM-CSSRule-Typen | |
Alle. |
readOnly | NN nicht zutreffend IE 5 DOM nicht zutreffend |
Schreibgeschützt | |
Gibt den Booleschen Wert true zurück, wenn eine Regel über eine @import-Regel oder ein link-Element auf ein Dokument bezogen wird. Solche Regeln können nicht in einem Skript verändert werden, wenngleich sich einzelne Stileigenschaften eines einer solchen Regel unterworfenen Elements modifizieren lassen, weil in diesem Fall die style-Eigenschaft des Elements und nicht das rule-Objekt selbst geändert wird. |
|
Beispiel | |
if (!document.styleSheets[2].cssRules[0].readOnly) { // not read-only, so OK to modify here } |
|
Wert | |
Boolescher Wert: true | false. |
|
Standardwert | |
Variiert je nach Regeltyp. |
selectorText | NN 6 IE 5 DOM 2 |
Lesen/Schreiben | |
Gibt den Selektor in der Stylesheet-Regel an. Obwohl diese Eigenschaft (außer bei IE 5/Mac) gelesen und geschrieben werden kann, haben Änderungen keine Auswirkung auf das Objekt oder seine Darstellung. |
|
Beispiel | |
document.styleSheets[0].cssRules[2].selectorText = "td.leftHeaders"; |
|
Wert | |
Zeichenfolge. |
|
Standardwert | |
Keiner. |
|
W3C-DOM-CSSRule-Typen | |
CSSPageRule CSSStyleRule |
style | NN 6 IE 5 DOM 2 |
Lesen/Schreiben | |
Gibt ein style-Objekt mit Eigenschaften zurück, die die Attributeinstellungen der aktuellen Regel widerspiegeln. Dies ist dieselbe Art von style-Objekt, das auch den Elementen im Dokument zugeordnet ist (entsprechend dem W3C-DOM-Objekt CSSStyleDeclaration). Wenn Sie Stylesheet-Einstellungen auf Regelebene ändern müssen, verwenden Sie zu diesem Zweck die style-Eigenschaft von rule oder cssRule. Änderungen werden automatisch direkt übernommen und wirken sich sofort auf die Elemente aus, die dieser Regel unterworfen sind. |
|
Beispiel | |
var oneRule; if (document.styleSheets) { if (document.styleSheets[0].cssRules) { oneRule = document.styleSheets[2].cssRules[1]; } else if (document.styleSheets[0].rules) { oneRule = document.styleSheets[2].rules[1]; } } if (oneRule) { oneRule.style.color = "red"; oneRule.style.fontWeight = "bold"; } |
|
Wert | |
Referenz auf ein style-Objekt (bzw. CSSStyleDeclaration-Objekt in W3C). |
|
Standardwert | |
Aktuelles style-Objekt. |
|
W3C-DOM-CSSRule-Typen | |
CSSFontRule CSSPageRule CSSStyleRule |
styleSheet | NN 6 IE nicht zutreffend DOM 2 |
Schreibgeschützt | |
Gibt eine Referenz auf das styleSheet-Objekt zurück, das im importierten Stylesheet enthalten ist. Dadurch haben Sie die Möglichkeit, cssRule-Objekte, die zu diesem styleSheet-Objekt gehören, zu untersuchen – im Grunde gelangen Sie auf die nächsttiefere Ebene der styleSheet-Objektstruktur der Remote-Stylesheet-Datei. |
|
Wert | |
styleSheet-Objektreferenz. |
|
Standardwert | |
Keiner. |
|
W3C-DOM-CSSRule-Typen | |
CSSImportRule |
type | NN 6 IE nicht zutreffend DOM 2 | |||||||||||||||
Schreibgeschützt | ||||||||||||||||
Gibt eine ganze Zahl zurück, die einem der sieben im W3C-DOM definierten cssRule-Typen entspricht. Jedem cssRule-Objekt in Netscape 6 ist eine unverschlüsselte Konstanteneigenschaft zugeordnet, die dem jeweiligen Regeltyp entspricht: |
||||||||||||||||
|
||||||||||||||||
Beispiel | ||||||||||||||||
var oneRule = document.styleSheets[2].cssRules[1]; if (oneRule.type == oneRule.IMPORT_RULE) { // process @import rule } |
||||||||||||||||
Wert | ||||||||||||||||
Eine ganze Zahl. |
||||||||||||||||
Standardwert | ||||||||||||||||
1 |
||||||||||||||||
W3C-DOM-CSSRule-Typen | ||||||||||||||||
Alle. |
deleteRule( ) | NN 6 IE nicht zutreffend DOM 2 |
deleteRule(index) | |
Entfernt die durch die auf Null basierende Indexnummer angegebene Regel aus der aktuellen @media-Regel. |
|
W3C-DOM-CSSRule-Typen | |
CSSMediaRule |
|
Parameter | |
|
|
Zurückgegebener Wert | |
Keiner. |
insertRule( ) | NN 6 IE nicht zutreffend DOM 2 |
insertRule("rule", index) | |
Fügt ein neue Regel (Selektortext und Stilattribute) an der durch den zweiten Parameter angegebenen Stelle in die aktuelle @media-Regel ein. |
|
W3C-DOM-CSSRule-Typen | |
CSSMediaRule |
|
Parameter | |
|
|
Zurückgegebener Wert | |
Ganze Zahl, die die Position der Einfügung angibt. |