Bonjour,

J'aimerais calculer la taille des marges autour d'un de mes objets html.
Mon objet est déclaré de cette manière dans mon fichier html :
Le code css est situé dans une feuille de style à part :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
#viewer
{
	width : 100%;
	height : 100%;
	margin-left : 300px;
	margin-right : 0px;
}
Au sein de mon fichier javascript j'effectue la boucle suivante afin de calculer la somme des marges des objets contenant mon objet viewer (seul mon objet viewer possède une marge dans le cas actuel) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
var offsetTop = 0;
var offsetLeft = 0;
var p = document.getElementById('viewer');			
while(p.style != undefined){
   offsetTop += p.style.marginTop;
   offsetLeft += p.style.marginLeft;
   p = p.parentNode;
}
A la suite de cela, offsetLeft devrait contenir 300. Hors il ne contient rien. La valeur de p.style.marginLeft de mon objet viewer a pour valeur "undefined" quand je l'affiche dans la console.

Par contre si je place le css dans le fichier html comme suit, tout marche bien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<div id="viewer" style="width:100%;height:100%;margin-left:300px;margin-right:0px"></div>
Pourquoi ne puis-je pas accèder au css si il se trouve dans une feuille de style externe au html ?

Merci de vos réponses

Cordialement

David