OVH Cloud OVH Cloud

classes css et propriétés

2 réponses
Avatar
seb
Bonjour,

Existe-t-il un moyen de spécifier une propriété textuelle dans une classe
css.

Je m'explique, je souhaiterais pouvoir décrire une classe css au travers
d'une propriété de celle-ci, un truc du genre:
.class1{
font-weight: bold;
mon-texte: "ceci est la classe 1";
}

Ensuite, par javascript, je peux récupérer la description de ma classe pour
l'afficher.

Je parviens à le faire pour IE avec:
- document.getElementById("element").className pour récupérer le nom de la
classe
- document.styleSheets[0].rules[1].style, puis une boucle, pour récupérer la
valeur de la propriété mon-texte
Seulement FireFox ne veut pas (comme ça en tout cas).

Existe-t-il une propriété particulière qui permettrait de faire ça ?
Est-il possible de "créer" des propriétés ?
Si ce n'est pas possible, comment feriez-vous pour apporter une description
à une classe css, si possible sans toucher au html (je vois pas mal de
possibilité différentes mais peut-être y en a-t-il une préférable) ?

merci,
seb

2 réponses

Avatar
Bobe
seb nous a dit le 30.07.2005 17:40:

Je parviens à le faire pour IE avec:
- document.getElementById("element").className pour récupérer le nom de la
classe
- document.styleSheets[0].rules[1].style, puis une boucle, pour récupérer la
valeur de la propriété mon-texte
Seulement FireFox ne veut pas (comme ça en tout cas).




En effet car la collection rules n'existe pas dans le DOM du W3C. C'est
cssRules.
http://www.yoyodesign.org/doc/w3c/dom2/style/css.html#CSS-CSSStyleSheet

document.styleSheets[0].cssRules[1].style ...

De plus, 'mon-texte' n'a pas de raccourci défini sur l'objet style
(exemple: [...].style.MonTexte):
http://www.yoyodesign.org/doc/w3c/dom2/style/css.html#CSS-CSS2Properties

Peut-être en passant de cette façon:

document.styleSheets[0].cssRules[1].style.getPropertyValue('mon-texte');

Suivi positionné sur fr.comp.lang.javascript

--
Aurélien Maille

"la vie d'un geek est un combat perpétuel contre l'imperfection"
Avatar
Jean-Marie
Bonjour,

N'ayant pas de Mac à domicile, pourriez-vous me dire comment se présente ce
site, sur un MAc sous IE:
www.sepeg.com

Il semblerait que le centrage des pages ne soit pas bon , uniquement sous
Mac et sous IE (correct sous Firefox et Opéra).
Si c'est le cas, c'est certainement dû à un pb de CSS et à une norme W3C non
respectée par IE.
J'utilise la technique des marges négatives pour centrer les pages.

Merci de vos coopération et de vos avis, pour contourner ce pb si vous
l'avez déjà rencontré.

Jean-Marie