cssRule, CSSRule, ruleNN 6 IE 5 DOM 2

Un objet de règle de feuille de style est un élément de la collection d´objets styleSheet dans le document. Les DOM IE et W3C utilisent des syntaxes différentes pour référencer chacun de ces objets de règle. Pour IE, la référence se fait par la collection rules (un élément s´appelle un objet rule); pour W3C, tel qu´il est implémenté dans Netscape 6 et IE 5 pour Macintosh, la référence se fait par la collection cssRules (un élément s´appelle un objet cssRule). Notez que l´objet cssRule ne fait pas partie de la version Windows de Microsoft Internet Explorer jusqu´à la version 6.

 

L´objet abstrait du DOM W3C correspondant s´appelle l´objet CSSRule, mais cette forme du nom de l´objet n´est importante que si vous désirez modifier les propriétés et méthodes de prototype de l´objet CSSRule dans Netscape 6. Le DOM W3C va plus loin pour définir des types spéciaux d´objets CSSRule pour chaque type de règle @ (CSSImportRule, CSSMediaRule, etc.). Un élément de la collection cssRules peut être de n´importe lequel de ces types et ce type est identifié par la propriété type de l´élément. Chaque type a son propre ensemble de propriétés et/ou méthodes qui s´appliquent à ce type cssRule. Dans les listes de propriétés et méthodes ci-dessous, repérez le ou les types auxquels elles s´appliquent. Cependant, en général, les règles incorporées que vous définirez par script seront du type CSSStyleRule.

 

Utilisez l´accès par script à un objet rule ou cssRule avec précaution. Si vous modifiez la définition du style ou le sélecteur d´une règle, les modifications affectent l´ensemble du document et peuvent, avec un simple signe deux-points mal placé, endommager d´autres règles dans le document. Pour alterner entre deux styles ou plus pour un seul élément, classe ou type d´élément, il est généralement plus fiable et plus efficace d´utiliser d´autres techniques qui fonctionnent avec plusieurs règles (permuter les affectations className pour les éléments) ou plusieurs feuilles de style (activer et désactiver les objets styleSheet). Mais pour que le modèle d´objet soit complet, le DOM W3C fournit un accès intégral aux parties de la règle de feuilles de style si vous en avez absolument besoin.

 
Référence de modèle d'objet
 
document.styleSheets[i].rules[j]
document.styleSheets[i].cssRules[j]
 
Propriétés spécifiques à l´objet
 
cssRulescssTextencodinghref
mediaparentRuleparentStyleSheetreadOnly
selectorTextstylestyleSheettype
 
Méthodes spécifiques à l´objet
 
deleteRule()insertRule()
 
Propriétés de gestionnaire d´événements spécifiques à l´objet

Aucune.

cssRulesNN 6 IE s.o DOM 2

Lecture seule

Renvoie une collection d´objets cssRule imbriqués dans une règle @media.

 
Valeur

Référence à un objet de collection cssRules.

 
Par défaut

Tableau de longueur zéro.

 
Types de CSSRule du DOM W3C
 
CSSMediaRule
cssTextNN 6 IE 5(Mac) DOM 2

Lecture/écriture

Indique le texte complet de la règle de feuille de style, y compris le sélecteur et les paires valeur/nom d´attribut entre accolades. IE 6 pour Windows ne fournit pas de propriété équivalente. Dans les navigateurs qui la prennent en charge, les modifications n´influencent pas l´objet ou l´affichage.

 
Exemple
 
document.styleSheets[0].cssRules[2].cssText = "td {text-align:center}";
 
Valeur

Chaîne.

 
Par défaut

Aucune.

 
Types de CSSRule du DOM W3C

Tous

encodingNN 6 IE s.o DOM 2

Lecture seule

Renvoie le code du jeu de caractères (par exemple ISO-8859-1 ou UTF-8) associé à une règle @charset.

 
Valeur

Chaîne.

 
Par défaut

Aucune.

 
Types de CSSRule du DOM W3C

CSSCharsetRule

hrefNN 6 IE s.o DOM 2

Lecture seule

Renvoie l´URI du fichier de feuille de style externe importée avec une règle @import.

 
Valeur

Chaîne.

 
Par défaut

Aucune.

 
Types de CSSRule du DOM W3C
 
CSSImportRule
mediaNN 6 IE s.o DOM 2

Lecture seule

Renvoie le type de support spécifié pour une règle @import ou @media.

 
Valeur

Constante, sous forme de chaîne, pour les types de support pris en charge par le navigateur (par exemple screen ou print).

 
Par défaut

all

 
Types de CSSRule du DOM W3C
 
CSSImportRule
CSSMediaRule
parentRuleNN 6 IE s.o DOM 2

Lecture seule

Fait référence à l´objet cssRule qui contient la règle cssRule actuelle, telle qu´une règle imbriquée dans une règle @. L´accès à cette valeur de propriété risque de bloquer Netscape 6.2.

 
Exemple
 
var superRule = document.styleSheets[0].cssRules[1].parentRule;
 
Valeur

Référence de l'objet cssRule.

 
Par défaut

null

 
Types de CSSRule du DOM W3C

Tous

parentStyleSheetNN 6 IE 5(Mac) DOM 2

Lecture seule

Référence à l´objet styleSheet contenant la règle cssRule actuelle. Permet à une fonction à laquelle une référence à un objet cssRule peut être transmise d´obtenir une référence à l´objet styleSheet offrant la possibilité d´en savoir plus sur le contenu de la feuille de style.

 
Exemple
 
var ss = document.styleSheets[0].cssRules[3].parentStyleSheet;
 
Valeur

Référence de l'objet styleSheet.

 
Par défaut

Objet courant.

 
Types de CSSRule du DOM W3C

Tous

readOnlyNN s.o. IE 5 DOM s.o.

Lecture seule

Renvoie la valeur booléenne true pour les règles qui arrivent à un document par la règle @import ou un élément link. De telles règles ne peuvent pas être modifiées par script, bien que les propriétés de style d´un élément gouverné par une telle règle puissent être modifiées car les modifications sont apportées à la propriété style spécifique à l´élément, et non à l´objet rule.

 
Exemple
 
if (!document.styleSheets[2].cssRules[0].readOnly) {
    // not read-only, so OK to modify here
}
 
Valeur

Valeur booléenne: true | false.

 
Par défaut

Varie selon le type de règle.

selectorTextNN 6 IE 5 DOM 2

Lecture/écriture

Indique la partie du sélecteur de la règle de feuille de style. Bien que cette propriété soit en lecture/écriture (sauf dans IE 5 pour Mac), les modifications n´influencent pas l´objet ou l´affichage.

 
Exemple
 
document.styleSheets[0].cssRules[2].selectorText = "td.leftHeaders";
 
Valeur

Chaîne.

 
Par défaut

Aucune.

 
Types de CSSRule du DOM W3C
 
CSSPageRule
CSSStyleRule
styleNN 6 IE 5 DOM 2

Lecture/écriture

Renvoie un objet style avec des propriétés qui reflètent les paramètres d´attribut de la règle courante. Il s´agit du même genre d´objet style associé aux éléments dans le document (correspondant à l´objet CSSStyleDeclaration du DOM W3C). Si vous devez modifier les paramètres de feuille de style au niveau de la règle, faites-le avec la propriété style de rule ou de cssRule. Les modifications sont enregistrées immédiatement et les modifications des éléments affectés par la règle s´affichent en conséquence.

 
Exemple
 
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";
}
 
Valeur

Référence à un objet style (CSSStyleDeclaration W3C).

 
Par défaut

Objet style courant.

 
Types de CSSRule du DOM W3C
 
CSSFontRule
CSSPageRule
CSSStyleRule
styleSheetNN 6 IE s.o DOM 2

Lecture seule

Renvoie une référence à l´objet styleSheet contenu par la feuille de style importée. De là, vous pouvez passer en revue les objets cssRule appartenant à cet objet styleSheet, essentiellement en descendant d´un niveau de plus jusqu´à la structure d´objet styleSheet du fichier de feuille de style distant.

 
Valeur

Référence de l'objet styleSheet.

 
Par défaut

Aucune.

 
Types de CSSRule du DOM W3C
 
CSSImportRule
typeNN 6 IE s.o DOM 2

Lecture seule

Renvoie un nombre entier correspondant à l´un des sept types cssRule, comme définis par le DOM W3C. Dans Netscape 6, chaque objet cssRule est doté de propriétés constantes en anglais correspondant aux types de règle, comme suit.

 
ConstanteNombre entier équivalent
cssRuleReference.UNKNOWN_RULE 0
cssRuleReference.STYLE_RULE 1
cssRuleReference.CHARSET_RULE 2
cssRuleReference.IMPORT_RULE 3
cssRuleReference.MEDIA_RULE 4
cssRuleReference.FONT_FACE_RULE 5
cssRuleReference.PAGE_RULE 6
 
Exemple
 
var oneRule = document.styleSheets[2].cssRules[1];
if (oneRule.type == oneRule.IMPORT_RULE) {
    // process @import rule
}
 
Valeur

Nombre entier.

 
Par défaut

1

 
Types de CSSRule du DOM W3C

Tous

deleteRule()NN 6 IE s.o DOM 2

deleteRule(index)

Supprime la règle numérotée de l´index à base zéro de la règle @media.

 
Types de CSSRule du DOM W3C
 
CSSMediaRule
 
Paramètres
 
  • Un nombre entier à base zéro correspondant à l´élément spécifié dans l'ordre du code source.
 
Valeur renvoyée

Aucune.

insertRule()NN 6 IE s.o DOM 2

insertRule("rule", index)

Insère une nouvelle règle (texte du sélecteur et attributs de style) dans la règle @media courante, à l´emplacement indiqué par le deuxième paramètre.

 
Types de CSSRule du DOM W3C
 
CSSMediaRule
 
Paramètres
 
  • Une chaîne contenant le sélecteur et les attributs de style entre accolades comprenant la règle à insérer.
  • Un nombre entier à base zéro correspondant à l´élément spécifié dans l'ordre du code source.
 
Valeur renvoyée

Nombre entier de l´emplacement d´insert.