Bonjour,
Une question simple mais je n'ai pas trouvé de solution satisfaisante :
J'aimerais réaliser un site sur deux colonnes dont celle de gauche reste fixe (cette colonne contient le menu vertical du site et une image de fond) et celle de droite (qui contient le contenu du site) puissent utiliser une scrollbar verticale pour faire défiler verticalement le contenu du site.
J'ai trouvé des solutions mais celles-ci présentent des défauts de conceptions notamment sur la position de la scrollbar :
1ère solution (principal défaut, les scrollbars sont situés à la limite du block 2 et non complétement à droite de la fenêtre) :
2ème solution : Celle développée par andreas n°7(que je félicite au passage pour ces templates) qui présente sous IE un défaut de positionnement de la scrollbar (pas complètement à droite de la fenêtre lorsque l'on place dans la colonne de droite d'autres balises div) et utilise la propriété fixed qui n'est pas prise en compte par IE6 :
Si parmi-vous vous avez d'autres solutions, je serais ravi de les étudier.
Merci
Modifié par MacBee (19 Jul 2006 - 19:16)
Une question simple mais je n'ai pas trouvé de solution satisfaisante :
J'aimerais réaliser un site sur deux colonnes dont celle de gauche reste fixe (cette colonne contient le menu vertical du site et une image de fond) et celle de droite (qui contient le contenu du site) puissent utiliser une scrollbar verticale pour faire défiler verticalement le contenu du site.
J'ai trouvé des solutions mais celles-ci présentent des défauts de conceptions notamment sur la position de la scrollbar :
1ère solution (principal défaut, les scrollbars sont situés à la limite du block 2 et non complétement à droite de la fenêtre) :
<html>
<head>
<title>Menu fixe</title>
<style type="text/css">
body {
margin: 0;
padding: 0;
border: 0;
background-color: green;
overflow: hidden;
}
#body2 {
position: absolute;
margin: 0 0 0 250px;
padding: 0px;
width: 640px;
z-index: 5;
top: 0;
left: 0;
height: 100%;
background-color: grey;
overflow: auto;
}
#fix1 {
position: absolute;
z-index: 6;
left: 0px;
top: 0px;
width: 250px;
height: 600px;
color: white;
background-color: blue;
}
</style>
</head>
<body>
<div id="body2">
<br /><br /><br /><br /><br /><br /><br /><br />
Ceci est la partie principale de la page. C'est à dire le contenu du block "body2".
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
Cette partie contient une scrollbar verticale et une horizontale
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
</div>
<div id="fix1">
Je suis la partie fixe 1. Je suis placé <b>a gauche</b> de la partie principale ou block "body2". Si vous faites défiler la page, vous verrez le texte du block "body2" passer <b>a cote de</b> moi.
</div>
</body>
</html>
2ème solution : Celle développée par andreas n°7(que je félicite au passage pour ces templates) qui présente sous IE un défaut de positionnement de la scrollbar (pas complètement à droite de la fenêtre lorsque l'on place dans la colonne de droite d'autres balises div) et utilise la propriété fixed qui n'est pas prise en compte par IE6 :
body > #sidebar
{position:fixed;}
Si parmi-vous vous avez d'autres solutions, je serais ravi de les étudier.
Merci
Modifié par MacBee (19 Jul 2006 - 19:16)