Bonjour à tous,
Une question un peu costaud mais, je le crois, intéressante...
J'ai une page qui peut se diviser en 3 parties (de haut en bas) :
- entête
- partie centrale
- pied
La partie entête contient 4 liens destinés à commander l'affichage alternatif de <div> que j'ai baptisés "volets".
La partie centrale est l'emplacement où doit s'afficher le volet activé (les 3 autres étant alors désactivés = invisibles).
Le pied de page s'affiche tout en bas. Vous voyez, c'est tout simple.
Règles de fonctionnement :
- Un seul volet peut s'afficher à la fois (1 activé => 3 désactivés).
- Les volets s'affichent tous au même emplacement (à tour de rôle) => top:0px et left:0px
- Les volets sont de hauteur variable (non connue).
- Le pied de page doit s'afficher juste au cul du volet affiché au-dessus, quellle que soit sa hauteur.
Actuellement (avec le code ci-dessous) :
- tous les onglets sont affichés, superposés les uns sur les autres.
- l'appel de la fonction afficheVolet() ne marche pas (j'ai essayé plusieurs syntaxes, sans grand succès)
- le pied de page vient se coller au bas de l'entête et les 4 volets, tous affichés, se superposent sur le pied (et donc sortent du cadre de la page. Bâââh...)
.conteneurAlternatif
{ position:absolute;
display:block;
width:auto;
margin-left:0px; /* margin-left:auto; */
margin-right:0px; /* margin-right:auto; */
margin-top:25px;
margin-bottom:0px;
top:0px;
left:0px;
}
<script type="text/javascript">
function afficheVolet(indice) // Affichage alterné des volets
{ for (i=1 ; i<5 ; i++)
{ var volet = document.getElementById('volet'+indice);
volet.style.visibility = (i==indice ? "visible" : "hidden");
}
}
</script>
// ...
<a href='javascript:afficheVolet(1);'><div class='languetteOn' onClick='afficheVolet(1);return false;'>Volet1</div></a>
<a href='javascript:afficheVolet(2);'><div class='languetteOn' onClick='afficheVolet(2);return false;'>Volet2</div></a>
<a href='#'><div class='languetteOn' onClick='afficheVolet(3);return false;'>Volet3</div></a>
<div class='languetteOn' onClick='afficheVolet(4);return false;'><a href='#'>Volet4</div></a>
// ...
<table style="width:730px;padding:0px;">
<tr><td>
<div style="z-index:1;position:relative;top:0px;left:0px">
<div id="onglet1" class="conteneurAlternatif" style="z-index:1;border:1px solid #00FF00;">
<p>Blablabla</p>
</div>
<div id="onglet2" class="conteneurAlternatif" style="z-index:1;border:1px solid #0000FF;">
<p>Blebleble</p>
</div>
<div id="onglet3" class="conteneurAlternatif" style="z-index:1;border:1px solid #FF8000;">
<p>Bliblibli</p>
</div>
<div id="onglet4" class="conteneurAlternatif" style="z-index:1;border:1px solid #FF0000;">
<p>Blobloblo</p>
</div>
</div>
</td></tr>
</table>
// ...
À force de tripatouiller mon code dans tous les sens, je commence à ne plus y voir très clair.
Aussi, j'en appelle à votre regard tout neuf et à vos neurones certainement beaucoup plus frais...
D'avance, big merci !
