Bonjour a toutes et tous,

je n'arrive a mettre en page mon nouveau site!
en effet, je seche depuis un fort long moment sur la hauteur du div central

Voila mon soucis:

j'ai mis en page les choses de la facon suivante:

<body>
<div id="main">

  <div id="header">
contenu header
 </div> <!-- /header -->

 <div id="tabs">
contenu de mon menu
  </div> <!-- /tabs -->

 <div id="page">
contenu de ma page central
  </div> <!-- /page -->

   <div id="footer">
contenu de mon footer
    </div> <!-- /footer -->

</div> <!-- /main -->
</body>


en ce qui concerne le code css j'ai ceci en version résumé mais avec l'essentiel:



html, body{ height:100%; margin:0; padding: 0}

#main { width: 90%; margin:0px auto 0 auto; _text-align:left;}

#header {position:relative; width:100%; height:80px; margin:0; padding:0; color:#FFF;}

#tabs {  margin:0px; padding:0; height: 32px; _height:1px; }

#page {width:100%; height:100%; background-color: red;} [b]// C'est la que ca marche pas![/b]

#footer {position:relative;  width:100%; height:20px; bottom:0px; color:#6685CC;}


en gros le soucis que je rencontre est le suivant:
j'ai mis des hauteurs fixe a mon header et mon div de tab cela s'affichant parfaitement tel que je le veux!
je souhaite désormais faire en sorte que le div page prenne toute la hauteur de la page jusq'au footer qui devrait rester en bas comme si bottom =0 et cela peut importe si le texte du div page est assez long ou non!
de meme je ne souhaite pas que si le texte est trop long le div page depasse en hauteur le div footer!

mais la je tourne en rond depuis plusieurs heures sans resultats!

PLEASE HELP
Merci d'avance pour votre soutien car j'ai eu beau lire des tutos j'y arrive pas!
je tiens a préciser dans la configuration telle que décrite que si je passe le footer en absolute et que je met plein de texte dans div page et bien cela depasse le footer et passe meme par dessus! pas top Smiley fache
oui ca je sais !
je pense que tu fais référence a ca:

http://forum.alsacreations.com/faq/faq-31-Comment-faire-une-mise-en-page-de-100-de-hauteur-avec-des-parties-fixes-en-tete-par-ex-.html

mais le rapport stipule:
a écrit :
A l'heure actuelle, la solution la plus simple à mettre en oeuvre (en raison des lacunes de certains navigateurs) est encore d'employer une mise en page à l'aide de tableaux.


alors que partout je lis que l'utilisation de tableaux est deconseiller!
Darkangel a écrit :
oui ca je sais !
je pense que tu fais référence a ca:

http://forum.alsacreations.com/faq/faq-31-Comment-faire-une-mise-en-page-de-100-de-hauteur-avec-des-parties-fixes-en-tete-par-ex-.html

mais le rapport stipule:
A l'heure actuelle, la solution la plus simple à mettre en oeuvre (en raison des lacunes de certains navigateurs) est encore d'employer une mise en page à l'aide de tableaux.


alors que partout je lis que l'utilisation de tableaux est deconseiller!
L'implémentation actuelle des valeurs du display ne permet pas de se passer des tableaux pour certains cas précis de mise en forme. Tu n'as donc pas vraiment le choix:
- soit tu es allergique aux tables (ce qui serait une absurdité) et tu optes pour un positionnement à base de displays en prévoyant un système de dégradation gracieuse pour Internet Explorer
- soit tu travailles en tables en attendant un meilleur support de la part des butineurs
Sur le fond, il y a un gros souci et beaucoup de confusions.

Le système en grille de tableau pour la présentation n'a rien de maudit en lui-même. Ce n'est pas l'option historique officielle d'HTML CSS, voilà tout. Des choix initiaux faits il y a des années par les pionniers qui défrichaient HTML nous pèsent parfois beaucoup Smiley cligne Mais 1) cette option aurait très bien pu être, il n'y a aucun obstacle "sémantique" sur le fond et 2) il doit être quand même assez évident maintenant que c'est la voie plébiscitée par l'usage, contrairement à la mise en page sans tableau de designs complexes...

Il n'y a pas vraiment lieu d'attendre un meilleur support du display:table, qui est en fait un mauvais cache-sexe dont on va découvrir les défauts le jour où monsieur-tout-le-monde l'utilisera (ceux des tableaux de présentation, avec quelques surenchères de manque de sémantique).

Les tableaux, ma foi, c'est bien. Quand c'est linéarisable évidemment, ce qui ne demande guère d'efforts. C'est mieux quand on en abuse pas, certes, mais ça, ça relève du rafinement.
Modifié par Laurent Denis (06 Mar 2008 - 12:04)
j'ai résolu mon soucis et le tout en css!
Probleme résolu!

toutefois j'ai un soucis qui désormais concerne la width!
En effet j'ai attribuer a mon container une width de 90% ce qui fonctionne sur ie7 et ie6 par contre si je teste sur ie 5.01 et ie5.5 il ne prends pas en compte ce 90% il prend les 100% direct!

pour le fun j'ai meme tester sur ie 4 et la je crois que le css n'est meme pas reconnu lol mais de toutes facon je pense pas qu'il existe des gens sur la planète qui utilise encore ca sinon les pauvres ... Smiley smile

quelqu'un pourrait'il m'expliquer pourquoi par contre ca ne fonctionne pas sur ie5??
Merci d'avance
Est-ce que c'est la largeur de 90% qui ne marche pas, ou le centrage horizontal (c'est à dire que le conteneur fait 90%, mais est aligné à gauche)?

Pour rappel, pour avoir un conteneur de largeur 90% centré, il suffit de faire:
#main {
	margin: 0 5%;
}
c'est la largeur qui ne marche pas !
le centrage et largeur marche nickel sur ie7 et ie6
mais sous ie5 ca prends 100%

en résumé j'ai:

body {
border:0;
margin:0;
padding:0;
}

	/* Container Général */
#container {
position: relative;
min-height: 100%;
height: 100%;
height: auto;
width: 90%;
margin:0px auto 0 auto;
}
	
Darkangel a écrit :
c'est la largeur qui ne marche pas !

Ça, j'en doute.

Bloc en largeur 50% et centré avec les marges latérales automatiques, dans IE5 et IE6:
upload/2043-iewid1.png

Bloc en largeur 90% et centré avec les marges latérales automatiques, dans IE5 et IE6, en utilisant le code que tu donnes:
upload/2043-iewid2.png

La largeur marche bien. Ce qui est possible à la rigueur, c'est que tu aies un élément de contenu ayant une largeur supérieure à celle du conteneur. Par exemple une image très large. Dans ce cas, l'image devrait dépasser, mais Internet Explorer jusqu'à sa version 6 agrandissait le bloc conteneur au delà de sa largeur normale. Mais si c'est ce problème, tu devrais constater le problème dans IE6 également, pas seulement avec IE 5 et 5.5.
je n''ai pas placé d'images! enfin pas encore mais ca viendras! chaque chose en son temps!

par contre je viens de verifier et je n'ai pas de contenu plus large!
j'ai par exemple mis mon footer dans le container et fixe celui-ci a 100% mais c'est 100% des 90!
Une page en ligne peut-être?
Parce que là, sans avoir tous les éléments, on tourne en rond...
je suis en local pour l'instant mais je mettrai ca en ligne ce weekend, la suis au taf et le proxy empeche les connexions ftp! Smiley decu