Bonjour a tous,

j'essai de faire en sorte que l'interface que je met en ce moment au point qui est optimise pour un affichage en resolution 1024.. puisse egalement etre plus ou moins correctement afficher en 800 par 600.
mon probleme est que j'utilise des pseudo frames
avec un header
puis une colonne a gauche (segmente verticalement entre un cadre et un menu en bas)
puis une page centrale

en format 1024 tout s'affiche nickel mais si on passe en format 800 la page centrale s'allonge verticalement et la colonne de gauche aussi sauf que le menu lui ne descends pas jusqu'en bas!
bien que j'ai specifier un bottom: 0px

#menu {
	position: absolute;
	width: 13.3%;
	border-style: solid solid none solid;
	border-color: #677D92;
	border-size: 1px;
	border-width: 1px;
	font-size: 0.8em;
	bottom: 0;
	}


comment faire pour que si la page centrale s'allonge verticalmenet le menu de la colone de gauche rest a 0!

merci d'avance pour votre aide
Bonjour,

Le bottom: 0 positionnera le bloc en bas de son référent. Par défaut, si le bloc positionné n'a aucun parent ou ancêtre positionné, le référent est BODY. Or, BODY ne va pas forcément jusqu'en bas du contenu, surtout si ce contenu est positionné en absolu...

Une solution consiste à utiliser un conteneur global, positionné en relatif et en min-height: 100%;, et dont le contenu ne serait pas hors-flux (donc pas de blocs positionnés en absolu). C'est un peu subtil à mettre en place, et moyennement efficace.

Peut-on voir la page en ligne?

Darkangel a écrit :
mon probleme est que j'utilise des pseudo frames

Ah, ça c'est un problème tout court, qui se règle facilement: en supprimant les pseudo-frames. Smiley lol
En realite, je peux pas vous le montrer en ligne je suis encore en local via easyphp mais je peux expliquer un peu plus les choses!

j'ai segmenter mes pseudos via un table.

<td width="14%">
    <?php include('Menu/menu.php'); ?>
    </td>


dans cette page menu.php j'ai deux divs

<div id="cadremenu"> mon cadre </div>
<div id="menu"> le menu</div>



#cadremenu {
position: relative;
top: 0;
width: 100%;
}  
  

#menu {
	position: absolute;
	width: 13.3%;
	border-style: solid solid none solid;
	border-color: #677D92;
	border-size: 1px;
	border-width: 1px;
	font-size: 0.8em;
	bottom: 0px;
	}


le referent est pour moi la table!
au passage tu indique que c'est un probleme qui peut se resoudre en supprimant les pseudo frames et comment fais tu pour que ne pas regenerer toute une page si tu la segente pas en plusieurs parties?
Darkangel a écrit :
En realite, je peux pas vous le montrer en ligne je suis encore en local via easyphp

Mauvaise réponse. Au revoir.

(Bon allez, on va faire un petit effort malgré tout. Smiley cligne )

Darkangel a écrit :
le referent est pour moi la table!

C'est à dire que cet élément TABLE est positionné en relatif ou en absolu (voire en fixed, mais ce serait idiot)? Et donc qu'il joue le rôle de référent pour le positionnement de div#menu?
Le problème, c'est que je ne suis pas sûr qu'un élément de tableau puisse servir de référent à un élément positionné en absolu. C'était le résultat d'un de mes derniers tests (élément TD qui ne «marche» pas comme référent), mais je peux me tromper.

Mais qui utilise encore des tableaux de nos jours? Smiley lol

Darkangel a écrit :
au passage tu indique que c'est un probleme qui peut se resoudre en supprimant les pseudo frames et comment fais tu pour que ne pas regenerer toute une page si tu la segente pas en plusieurs parties?

Je te retourne une question: que signifie «régénérer» une page? Et qu'est-ce qu'une pseudo-frame exactement?

Si ce que tu appelles pseudo-frames est juste une technique qui consiste à utiliser un langage serveur de façon minimale (par exemple juste la fonction include() en PHP) pour éviter de dupliquer des portions de code commune d'une page à l'autre, alors 1) il faut oublier l'appellation «pseudo-frame» qui est trompeuse (et il n'y a pas besoin d'appellation particulière pour la remplacer) et 2) ça n'a rien à voir avec la présentation.

Si par pseudo-frame tu entends des blocs de dimensions fixes en overflow: auto, alors on parle là uniquement de mise en page, et cette pratique est à éviter autant que possible. Parce que c'est chiant à utiliser (problème d'ergonomie).