Salut, ça fait quelques heures que j'essaie en vain de fixer un pied de page, de manière à ce qu'il soit à chaque fois en bas de ma page, même quand il y a peu de texte.

J'ai testé la prop. de FV, mais pas moyen, y'a tjs un élément qui fait tout basculer.
(le fait que mon footer soit hors de ma zone principale). Soit ça fontionne sur Firefox, soit ça fonctionne pas du tout. A force de rajouter et retirer, c'est assez confus, alors, je repars de zéro. Je précise en passant la structure de la page:

Un header width 100%
Un Global width 1000 pxl
Dans le Global, 1 div flottant à gauche, 1 autre à gauche, et 1 à droite
Ensuite mon Footer.

Mon HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
       <title>Page d'accueil du site </title>
       <meta name="description" content="boule à facettes" />
       <meta name="keywords" content=" boule à facettes" />
       <link rel="stylesheet" media="screen" type="text/css" id="css" href="style.css" />
</head> 
<body>
<div id="header"><div id="dansheader"><img src="images/alogoo.gif" alt="header" /></div></div>  
 <div id="global">
  <div id="gauche">
   <div id="menu2">
    <div class="indentmenu">
     <ul><li><a href="/index.php" class="current">Accueil</a></li>
	    <li><a href="/news.php">Domaines</a></li>
	    <li><a href="/conseils.php">Services</a></li>
    </ul>
   </div>
  </div>
 </div>
 <div id="migauche">
  <h3>Pr&eacute;sentation</h3>
    <div class= "container">
    <div class= "couve2"><img src="images/minilogo.gif"  alt="Mini logo " width="90" height="90"/></div>
     <h1>Qui sommes nous?</h1>
      <span class="chapeau"> Lorem ipsum doada liberoLorem ipsum doada libero LorLorem ipsum doada liberoLorem ipsum doada liberoem ipsum doada libero. Fusce ac quam. Donec neque</span>
      <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Duis ligula lorem, consequat eget, tristique nec, auctor quis, purus. Vivamus ut sem. Fusce aliquam nunc vitae purus. Aenean viverra malesuada libero. Fusce ac quam. Donec neque. </p>
      </div> 
     </div>
      <div id="droite">
       <div class="indentmenu"><ul><li><a href="/admin.php" class="current">Admin</a></li></ul></div>
	 </div>
    </div>
    <div id= "footer"> Footer ||	 © ||	 Adresse ||	 Tel ||	 Fax ||	 Footer ||	 Footer ||	 Footer ||	 Footer ||	 Footer || </div>

</body>
</html>


Puis Ce cSs:


body{margin:0;padding:0;font-family:"Trebuchet MS", Geneva, Verdana, Arial, sans-serif; background-image: url(images/img03.gif); background-repeat: repeat-x; background-position: bottom; }
#header{ text-align:left; vertical-align:text-bottom; background-repeat:repeat-x; background-image:url(images/baground.gif); margin:0; padding:0; }
#dansheader{margin-right:auto;margin-left:auto;width:1100px;text-align:left;}
#global{ overflow:hidden; margin-top:0; margin-left:auto; padding-left:0; width:1000px; margin-right:auto; background-position: bottom; }
#footer{ border-top-width:1px; border-top-style:solid; border-top-color:#666; margin-top:0px; margin-bottom:0; background-color:#EE9803; font-size:12px; color:#FFF; text-align:center; padding-top:10px; padding-bottom:10px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #666; height: 10px; }
#gauche{float:left;width:160px;font-size:13px;text-align:center;padding-top:0;padding-left:10px;padding-right:0;margin:0;}
#migauche{ float:left; width:600px; margin-left:20px; margin-top:0; margin-right:20px; padding-top:5px; padding-bottom: 10px; }
#droite{float:left;width:160px;font-size:13px;color:#CCC;margin-top:0;text-align:center;margin-bottom:0;border-bottom-width:3px;border-bottom-style:solid;border-bottom-color:#000;padding-bottom:10px;padding-top:0;}
#menu2{float:left;width:160px;padding-bottom:10px;text-align:right;background-repeat:no-repeat;background-position:top;padding-top:0;}
div.container{color:#333;text-align:left;font-size:14px;font-weight:lighter;margin-left:0;margin-top:0;margin-bottom:0;line-height:1.64em;background-image:url(images/bgh3.jpg);background-repeat:repeat;padding:10px;}
h1{ font-size:17px; color:#EE9803; padding-bottom:4px; margin-bottom:0; margin-top:0; }
h3{ color:#999; margin-top:0; text-align:left; font-size:20px; line-height:25px; margin-bottom:20px; margin-left:0; border-bottom-width:1px; border-bottom-style:solid; border-bottom-color:#CCC; }
.indentmenu{font:lighter 16px Arial;text-align:left;float:none;list-style-type:none;padding-right:0;}
.indentmenu ul{line-height:25px;list-style-type:none;margin:0;padding:0;}
.indentmenu ul li{border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:#CCC;padding:5px 0 0;}
.indentmenu ul li a{ text-decoration:none; color:#EE9803; padding-top:0; list-style-type:none; padding-left:18px; background-image:url(images/afleche.png); background-position:left center; background-repeat:no-repeat; display:block; }
.indentmenu ul li a:hover,.indentmenu ul li .current{ padding-top:0; background-repeat:no-repeat; list-style-type:none; background-image:url(images/afleche.png); background-position:left center; padding-left:20px; display:block; background-color:#F7F7F7; border-bottom-color:#EE9803; padding-bottom:0; color:#444444; }
.couve2{text-decoration:none;border:5px solid #CCC;float:left;margin:2px 15px 0 2px;padding:0;}
.chapeau{font-size:15px;color:#2f8bc7;text-decoration:none;line-height:3ex;list-style-type:none;}


Une idée?

En ligne ça donne ça presentation.html
Modifié par FranZz (03 Nov 2008 - 11:47)
Hello FranZz,

Je ne vois pas de problème particulier avec ton pied de page, en rajoutant du contenu dans ton container, global "s'étire" et pousse le pied de page qui se trouve toujours en bas du viewport...
Ce n'est pas ce que tu souhaites ?

Par contre, j'ai un peu plus de mal à comprendre cette dimension :


#dansheader {
margin-left:auto;
margin-right:auto;
text-align:left;
[#red][b]width:1100px;[/b][/#]
}




Cdt,
Sylvain
Hello !!!

Concernant mon pied de page, en fait mon souhait aurait été que celui ci se trouve en bas de ma page même si le contenu ne fait que deux lignes. J'ai testé l'article de FV, mais pas moyen, mes éléments ne se positionnent pas comme je le souhaite, je repars donc à zéro. J'y arrive pas quoi.

Alors, pour ce qui est de la taille width:1100px;... En fait, la taille de mon div global fait 1000 pxl, et je souhaitais que mon header, qui n'est pas dans le même div, commence un peu plus tôt. dans l'exemple en ligne, le header commence un peu avant mon global, c'est pour cette raison que je lu ai donné un taille un peu plus grande. ( Mon header c'est 1 div avec un BG et une image qui étire celui ci à la bonne taille ( hauteur) )
Modifié par FranZz (01 Nov 2008 - 13:33)
Hello FranZz,

Ok pour l'explication du décallage Smiley cligne
Par contre, je ne vois pas la mise en application de la méthode proposée par Florent ou par Pompage ?

@+
Cdt,
Sylvain
6l20 a écrit :
Par contre, je ne vois pas la mise en application de la méthode proposée par Florent ou par Pompage ?

Moi non plus.

Pas de HTML et BODY en height:100%, pas de conteneur global en min-height:100% et positionné en relatif, et le pied de page (qui doit être dans le conteneur global) n'est pas positionné en absolu. Smiley confuse
Hello !

Ben en fait, comme je le disais plus haut, j'ai essayé la méthode, mais à plusieurs reprises ça n'a pas fonctionné. Je suis donc reparti de mon code de base, celui que je plaque ici haut.

J'ai viré les modifications que j'y ai apportées dans le but d'avoir le pied à 100% car mon code devenait un grand n'importe quoi.

FV, tu me fais part de ta remarque et je t'en remercie, mais comme je le disais lors de mon premier post, mon pied de page est à l'extérieur de mon container. Je n'ai pas le choix car mon pied de page a une largeur de 100% contrairement à mon global qui a une taille de 1000 pxl. Celui ci ne peut donc pas se trouver dans le container global. Et donc je cherchais une solution.

Maintenant, je dois peut êre refaire la structure de ma page en incluant le pied de page dans mon global, mais ça me parrait assez difficile vu les différences de tailles exprimées ci-haut! C'est une impasse un peu là ...
Smiley langue
Modifié par FranZz (01 Nov 2008 - 18:01)
Ok, je viens de réessayer l'application du tuto. Je rencontre un problème, différent de tout à l'heure.

En fait, mon pied de page est bien en bas, mais entre mon bas de page et la fin de mon container, y'a un énorme espace blanc ...

En ligne ça donne ça presentation.html

HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
	<title>Page d'accueil du site </title>
    <meta name="description" content="boule à facettes" />
    <meta name="keywords" content=" boule à facettes" />
	<link rel="stylesheet" media="screen, projection" type="text/css" id="css" href="style.css" />
    <!--[if lte IE 6]>
<style type="text/css">
div#page {
	height: 100%;
}
</style>
<![endif]-->
</head> 
<body>
<div id="header"><div id="dansheader"><img src="images/alogoo.gif" alt="header" /></div></div>  
 <div id="page"><div id="global">
  <div id="gauche">
   <div id="menu2">
    <div class="indentmenu"><h1 id="premier-element">…</h1>
     <ul><li><a href="/index.php" class="current">Accueil</a></li>
	    <li><a href="/news.php">Domaines</a></li>
	    <li><a href="/conseils.php">Services</a></li>
    </ul>
   </div>
  </div>
 </div>
 <div id="migauche">
  <h3>Pr&eacute;sentation</h3>
    <div class= "container">
    <div class= "couve2"><img src="images/minilogo.gif"  alt="Mini logo " width="90" height="90"/></div>
     <h1>Qui sommes nous?</h1>
      <span class="chapeau"> Lorem ipsum doada liberoLorem ipsum doada libero LorLorem ipsum doada liberoLorem ipsum doada liberoem ipsum doada libero. Fusce ac quam. Donec neque</span>
      <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Duis ligula lorem, consequat eget, tristique nec, auctor quis, purus. Vivamus ut sem. Fusce aliquam nunc vitae purus. Aenean viverra malesuada libero. Fusce ac quam. Donec neque. </p>
      </div> 
     </div>
      <div id="droite">
       <div class="indentmenu"><ul><li><a href="/admin.php" class="current">Admin</a></li></ul></div><p id="dernier-element">…</p>
	 </div>
    </div>
    <div id= "piedpage"> Footer ||	 © ||	 Adresse ||	 Tel ||	 Fax ||	 Footer ||	 Footer ||	 Footer ||	 Footer ||	 Footer || </div>
</div>
</body>
</html>


Css

html, body {
	margin: 0;
	padding: 0;
	height: 100%;
}
#piedpage {
	position: absolute;
	bottom: 0; left: 0;
	width: 100%;
	border-top-width:1px; border-top-style:solid; border-top-color:#666; margin-top:0px; margin-bottom:0; background-color:#EE9803; font-size:12px; color:#FFF; text-align:center; padding-top:10px; padding-bottom:10px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #666; height: 10px;
}
#page #premier-element {
	margin-top: 0;
}
#page #dernier-element {
	margin-bottom: 0;padding-bottom: 4em;
}
#page { min-height: 100%; margin-top: 0; margin-right: auto; margin-bottom: 0; margin-left: auto;position: relative; }
body{ font-family:"Trebuchet MS", Geneva, Verdana, Arial, sans-serif; background-image: url(images/img03.gif); background-repeat: repeat-x; background-position: bottom; height: 100%; }
#header{ text-align:left; vertical-align:text-bottom; background-repeat:repeat-x; background-image:url(images/baground.gif); margin:0; padding:0; }
#dansheader{margin-right:auto;margin-left:auto;width:1100px;text-align:left;}
#global{ overflow:hidden; margin-top:0; margin-left:auto; padding-left:0; width:1000px; margin-right:auto; background-position: bottom; }
#footer{ border-top-width:1px; border-top-style:solid; border-top-color:#666; margin-top:0px; margin-bottom:0; background-color:#EE9803; font-size:12px; color:#FFF; text-align:center; padding-top:10px; padding-bottom:10px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #666; height: 10px; }
#gauche{float:left;width:160px;font-size:13px;text-align:center;padding-top:0;padding-left:10px;padding-right:0;margin:0;}
#migauche{ float:left; width:600px; margin-left:20px; margin-top:0; margin-right:20px; padding-top:5px; padding-bottom: 10px; }
#droite{float:left;width:160px;font-size:13px;color:#CCC;margin-top:0;text-align:center;margin-bottom:0;border-bottom-width:3px;border-bottom-style:solid;border-bottom-color:#000;padding-bottom:10px;padding-top:0;}
#menu2{float:left;width:160px;padding-bottom:10px;text-align:right;background-repeat:no-repeat;background-position:top;padding-top:0;}
div.container{color:#333;text-align:left;font-size:14px;font-weight:lighter;margin-left:0;margin-top:0;margin-bottom:0;line-height:1.64em;background-image:url(images/bgh3.jpg);background-repeat:repeat;padding:10px;}
h1{ font-size:17px; color:#EE9803; padding-bottom:4px; margin-bottom:0; margin-top:0; }
h3{ color:#999; margin-top:0; text-align:left; font-size:20px; line-height:25px; margin-bottom:20px; margin-left:0; border-bottom-width:1px; border-bottom-style:solid; border-bottom-color:#CCC; }
.indentmenu{font:lighter 16px Arial;text-align:left;float:none;list-style-type:none;padding-right:0;}
.indentmenu ul{line-height:25px;list-style-type:none;margin:0;padding:0;}
.indentmenu ul li{border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:#CCC;padding:5px 0 0;}
.indentmenu ul li a{ text-decoration:none; color:#EE9803; padding-top:0; list-style-type:none; padding-left:18px; background-image:url(images/afleche.png); background-position:left center; background-repeat:no-repeat; display:block; }
.indentmenu ul li a:hover,.indentmenu ul li .current{ padding-top:0; background-repeat:no-repeat; list-style-type:none; background-image:url(images/afleche.png); background-position:left center; padding-left:20px; display:block; background-color:#F7F7F7; border-bottom-color:#EE9803; padding-bottom:0; color:#444444; }
.couve2{text-decoration:none;border:5px solid #CCC;float:left;margin:2px 15px 0 2px;padding:0;}
.chapeau{font-size:15px;color:#2f8bc7;text-decoration:none;line-height:3ex;list-style-type:none;}

Modifié par FranZz (01 Nov 2008 - 18:20)
FranZz a écrit :
C'est une impasse un peu là ... Smiley langue

Ah tiens, moi j'y arrive:

upload/2043-5559873277.png

(Fait en une minute avec Firebug.)
Alors pour aider:

<html><!-- height: 100% -->
	<body><!-- height: 100% -->
		<div id="page"><!-- min-height: 100% -->
			<div id="header"></div>
			<div id="global"></div>
			<div id="footer"></div>
		</div>
	</body>
</html>
(Commentaires HTML parce que j'avais la flemme d'écrire un code CSS complet.)

Le footer doit être positionné en absolu avec un bottom:0; left:0; width: 100%; par exemple.
FranZz a écrit :
Je viens juste de trouver la soluce !!!

Une belle méthode de bourrin en JavaScript, alors que ça se fait sans grand problème et de manière (à mon avis) plus fiable en CSS. Mais pourquoi pas...
Hello et merci pour la modération dont tu fais preuve !!!!
Cette méthode vient de Pompage.

Plus sérieusement, je suis toujours partant, bien entendu pour faire cela en css !!!!

Mais j'ai du mal à appliquer. J'ai mis ci haut mon code source avec les modif faites dedans ... Mais cela ne semblait ne pas fonctionner ....

Les propriétés que j'ai rajoutées sont:


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

body{ font-family:"Trebuchet MS", Geneva, Verdana, Arial, sans-serif; margin: 0px; padding: 0px; }

#footer{ position: absolute;
	bottom: 0; left: 0;
	width: 100%;
	border-top-width:1px; 
        border-top-style:solid; 
        border-top-color:#666; 
        margin-top:0px; 
        margin-bottom:0; 
        background-color:#EE9803; 
        font-size:12px; 
        color:#FFF; 
        text-align:center; 
        padding-top:10px; 
        padding-bottom:10px; 
        border-bottom-width: 1px; 
        border-bottom-style: solid; 
        border-bottom-color: #666; 
        height: 10px; }


Ici:http://apache.masta.be/3/piedfinal.html

Sur Safari c'est ok
Sur Firefox aussi
Tu sais faire un test sur IE stp?

Ps: lorsque j'applique min-height: 100% à #page, ça ne fonctionne plus sous Safari...
Merci !
Modifié par FranZz (02 Nov 2008 - 11:38)
Ça avance, mais:

1. Tous les contenus doivent être dans div#page, header compris.
2. div#page doit être positionné en relatif et en min-height: 100%.

Par ailleurs, ton code HTML est un peu bordélique. Je n'ai pas réussi à le lire, et me suis donc reposé sur l'interprétation de Firebug. Un peu d'organisation, l'utilisation de commentaires sous la forme <!-- #mon-identifiant --> pour marquer la fin des principaux blocs, ça serait bien.