11548 sujets

JavaScript, DOM et API Web HTML5

Plop !

J'ai une page qui à cette structure:

<body>
    <div id="Conteneur">
    
      <div id="EnTeteGauche">
      </div>

      <div id="EnTeteCentre">
      </div>


      <div id="CorpGauche">
      </div>


      <div id="CorpCentre">
      </div>
</body>

Suivant le tutoriel de raphael j'ai crée une zone dans ma page qui sert à afficher de l'aide:

/* Définition de la zone d'info */
A SPAN {
  DISPLAY: none
}

A:hover SPAN {
  DISPLAY: block;
  POSITION: absolute;
  LEFT: 209px;
  TOP: 125px;
  WIDTH: 450px;
  HEIGHT: 30px;
  COLOR: #000;
  FONT-SIZE: 8pt;
  FONT-WEIGHT: normal
}

Mais voila, 'POSITION: absolute' n'étant pas si absolute que ça à mon goût selon l'endroit de ma page ou je me trouve je doit compenser le décalage, exemple:

#CorpGauche UL LI A:hover SPAN {
  MARGIN-TOP: -158px /* Correction de la marge de la zone... */
}

Le problème (on y arrive enfin, vous y croyez plus hein Smiley cligne ) c'est que je construit (enfin j'essaye, c'est pas encore ça...) un menu en javascript à icône dont les éléments sont disposé circulairement (vous montrerai ca le jour ou ca marche...), pour cela j'ai dans ma page HTML ce code:

<div id="DivRub1"><a href="#"><img src="Img/Planning.gif" onLoad="Place(1);"/><span>Planning</span></a></div>

Mais il faudrait que je puisse compenser le décalage du <span> (comme dans l'exemple précédent) lors de la contruction du menu et là... ben je sait pas du tout comment faire...
Peut on faire un truc du genre document.getElementById().style.margin-top = "-XXpx"; ?
Y a t il une autre solution ?
Enfin je suis dans le flou quoi...
Merci d'avance à la lumière qui va m'éclairer Smiley biggrin
Bon, je viens de trouver (juste aprés avoir poster -_-):
style.margin
style.marginTop
style.marginRight
style.marginBottom
style.marginLeft
Par contre est ce qu'en partant de document.getElementById("DivRub1") (donc mon <div id="DivRub1">) je peux 'descendre' jusqu'au <span>, et comment ?