Forum de discussion
Forum « Programmation Javascript » (archives)
Re: GRRRR! IE6, JS et CSS ambiguïté !?!
Envoyé: 4 juin 2004, 10h39 par Oznog
Effectivement, mais c'est aussi justifiable, note que IE est excessivement permissif. C'est à la mode chez Microsoft, lourd mais des dizaines d'options pour faire la même chose. Ça du bon mais c'est certes intimidant aux premiers abords.
Justifiable car ce n'est pas le même moteur qui interpréte les deux, l'un CSS et l'autre un Javascript qui joue ensuite dans le DOM sans parler du HTML lui même, la bordure d'une table (border="1")!
Les noms d'objets/propriété peuvent varier. Et note que le CSS n'a pas de méthode, chose que les objets de style Javascript peuvent avoir... A tout ça ajoute les conventionnelle incompatibilité!
Alors tu n'est pas le seul, on passe souvent beaucoup de temps à trouver l'équivalance, de mois en moins mais ça reste. Vaut mieux t'habituer si tu programme beaucoup. Souvent enlever le tiret.
Dans ce cas-ci, le CSS border n'est pas la largeur de la bordure mais une collection des propriétés de bordure dans une chaîne de caractère!! Ça ne peut pas retourner la largeur en pixel mais la chaîne au complet (this.parentElement.style.border) fonctione donc contrairement à ce que tu supopose.
Mais reste à savoir si l'élément en question a bien une bordure!! S'il en a pas il retourne bien sûr une chaîne vide.
<table width="100" height="100"><tr><td style="border: 2px solid #eee" onclick="alert(this.style.border)">allo</td></tr></table>
<div style="width:100px;height:100px;border: 2px solid #eee;" onclick="alert(this.style.border)">allo</div>
ATTENTION, si tu veux cibler le parent (parentElement), fait un enfant ;-)
<table width="100" height="100"><tr><td style="border: 2px solid #eee"><p onclick="alert(this.parentElement.style.border)">allo</p></td></tr></table>
ATTENTION, il y a le border-width qui peut s'appliquer, avec une collection de 4 valeurs (top - right - bottom - left) mais elle ne semble pas tout a fait compatible.
La meilleurs référence bonnes références "W3C Recommendation - Cascading Style Sheets, level 2 Specification" (http://www.w3.org/TR/REC-CSS2) et son club école "W3schools" (http://www.w3schools.com/css/)
Ciao
Oznog
Réponses
|