Hello Smiley smile

Pour centrer le menu du tuto précédent :

[i]Remplacer[/i]

#menu {
[b]position: absolute;
top: 0;
left: 0;[/b]
z-index:100;
[b]width: 100%;[/b] }

[i]Par[/i]

#menu {
[b]margin:0 auto;[/b]
z-index:100;
[b]width:XXXpx;[/b] /* Largeur de ton menu ou de ton design */}

Le positionnement absolu utilisé à l'origine permettait de "coller" le menu en haut (top:0) à gauche (left:0) de l'élément parent (ici <body>, soit la fenêtre du navigateur).

Ce que je viens de te donner ne centrera QUE ton menu, si tu souhaites centrer tout ton design, utilise plutôt :

html { /* Corrige un bug de centrage sous IE  */
text-align:center; }

body { /* body étant le conteneur principal */
width:XXXpx; /* largeur du design */
margin:0 auto;
text-align:left; }

Bon courage Smiley cligne
Modifié par BeliG (15 Dec 2007 - 13:38)
Merci pour votre solution qui fonctionne à merveille sur IE7. Cependant, j'ai un bug d'affichage sur firefox. Voici le code que j'utilise:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Menu d&eacute;roulant horizontal</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<script type="text/javascript">
<!--
window.onload=montre;
function montre(id) {
var d = document.getElementById(id);
	for (var i = 1; i<=10; i++) {
		if (document.getElementById('smenu'+i)) {document.getElementById('smenu'+i).style.display='none';}
	}
if (d) {d.style.display='block';}
}
//-->
</script>
<script type="text/javascript">
<!--
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>


<style type="text/css">
<!-- 
/* CSS issu des tutoriels  http://css.alsacreations.com  */
body {
margin: 0;
padding: 0;
background: white;
width:1000px;
margin:0 auto;
font: 80% verdana, arial, sans-serif;
}
html { /* Corrige un bug de centrage sous IE  */
text-align:center; }

dl, dt, dd, ul, li {
margin: 0;
padding: 0px;
list-style-type: none;
}
#menu {
	margin:0 auto;

z-index:100;

width:1000px; /* Largeur de ton menu ou de ton design */}


}
#menu dl {
	float: left;
	width: auto;
	margin: 0 0px;
}
#menu dt {
	cursor: pointer;
	text-align: center;
	font-weight: bold;
	border: 0px solid gray;
}
#menu dd {
border: 0px solid gray;
}
#menu li {
	text-align: center;
}
#menu li a, #menu dt a {
color: #ffff;
text-decoration: none;
display: block;
height: 100%;
border: 0 none;
}
#menu li a:hover, #menu dt a:hover {
		
		/*background-image: url(images/menu/pointvert.gif) ;
		background-repeat:no-repeat;*/
}

#site {
	position: absolute;
	z-index: 1;
	top : 177px;
	left : 44px;
	color: #000;
	background-color: #ddd;
	padding: 0px;
	border: 0px solid gray;
}

a {text-decoration: none;
color: black;
color: #222;
}
-->
</style>
</head>

<body>

<div id="menu">
  <dl>
	  <dt><img src="images/menu/menu_011.gif" width="194" height="174" border="0"></dt>
  </dl>
   
     <dl>
		<dt onmouseover="javascript:montre();"><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu1','','images/menu/menur_02.gif',1)"><img src="images/menu/menu_02.gif" name="menu1" width="106" height="174" border="0"></a></dt>
  </dl>	
<dl>			
		<dt onmouseover="javascript:montre('smenu1');"><a href="" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu2','','images/menu/menur_034.gif',1)"><img name="menu2" border="0" src="images/menu/menu_034.gif"></a></dt>
			<dd id="smenu1">
				<ul>
					<li><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu7','','images/menu/fruitslegumes.jpg',1)"><img name="menu7" border="0" src="images/menu/fruitslegumesr.gif" /></a></li>
				  <li><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu8','','images/menu/fruitslegumesbio.jpg',1)"><img name="menu8" border="0" src="images/menu/fruitslegumesbior.gif" /></a></li>
			  </ul>
			</dd>
  </dl>
    <dl>
		<dt onmouseover="javascript:montre();"><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu3','','images/menu/menur_04.gif',1)"><img name="menu3" border="0" src="images/menu/menu_04.gif" /></a></dt>
	</dl>
    <dl>
		<dt onmouseover="javascript:montre();"><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu4','','images/menu/menur_05.gif',1)"><img name="menu4" border="0" src="images/menu/menu_05.gif"></a></dt>
	</dl>
  <dl>
		<dt onmouseover="javascript:montre();"><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu5','','images/menu/menur_06.gif',1)"><img name="menu5" border="0" src="images/menu/menu_06.gif"></a></dt>
  </dl>
    <dl>
    <dt onmouseover="javascript:montre();"><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu6','','images/menu/menur_07.gif',1)"><img name="menu6" border="0" src="images/menu/menu_07.gif"></a></dt>
	</dl>
</div>


</body>
</html>

Je ne vois pas la cause de ce bug. Merci à tous Smiley biggrin [/i][/i][/i][/i][/i][/i]
Euh... t'as pas une page en ligne plutôt ? Smiley langue

Quel genre de bug d'affichage ?

EDIT :
J'viens de jeter un oeil au code en attendant, et j'me suis aperçu que tu avais utilisé les 2 méthodes que je t'avais proposé. Non, c'est soit l'une (tu veux centrer juste le menu), soit l'autre (tu veux centrer tout ton design).

Là apparement tu voudrais centrer l'ensemble du site, faut donc que :
- tu enlèves le margin:0 auto dans #menu
- tu remplaces width:1000px par width:100% dans #menu (plus souple, si tu souhaites mettre à jour la largeur),
- tu retires margin:0 dans body (useless, vu que tu règles margin:0 auto un peu en dessous),
- tu rajoutes text-align:left dans body pour éviter que ton texte soit centré dans #site.
Modifié par BeliG (15 Dec 2007 - 14:38)
Tu as résolu mon problème et je te remercie encore pour ta rapidité. Smiley cligne
L'affichage est parfait sur IE7 et firefox.
Dls mais j'ai encore un pb sous Firefox+IE6

Lorsque j'introduis un tableau, l'affichage du tableau n'apparait pas sous le menu mais sur le coté droit, ce qui est un peu problématique pour le design Smiley cligne .
Voici la page concernée
Si quelqu'un a la solution ...

Revoici le code

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Menu d&eacute;roulant horizontal</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<script type="text/javascript">
<!--
window.onload=montre;
function montre(id) {
var d = document.getElementById(id);
	for (var i = 1; i<=10; i++) {
		if (document.getElementById('smenu'+i)) {document.getElementById('smenu'+i).style.display='none';}
	}
if (d) {d.style.display='block';}
}
//-->
</script>
<script type="text/javascript">
<!--
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>


<style type="text/css">
<!-- 
/* CSS issu des tutoriels  http://css.alsacreations.com  */
body {
	padding: 0;
	text-align:left;
	background: white;
	width:1000px;
	margin:0 auto;
	font: 80% verdana, arial, sans-serif;
}
html { /* Corrige un bug de centrage sous IE  */
text-align:center; }

dl, dt, dd, ul, li {
margin: 0;
padding: 0px;
list-style-type: none;
}
#menu {

z-index:100;

width:100%;


}
#menu dl {
	float: left;
	width: auto;
	margin: 0 0px;
}
#menu dt {
	cursor: pointer;
	text-align: center;
	font-weight: bold;
	border: 0px solid gray;
}
#menu dd {
border: 0px solid gray;
}
#menu li {
	text-align: center;
}
#menu li a, #menu dt a {
color: #ffff;
text-decoration: none;
display: block;
height: 100%;
border: 0 none;
}
#menu li a:hover, #menu dt a:hover {
		
		/*background-image: url(images/menu/pointvert.gif) ;
		background-repeat:no-repeat;*/
}

/*#site {
	position: absolute;
	z-index: 1;
	top : 177px;
	left : 44px;
	color: #000;
	background-color: #ddd;
	padding: 0px;
	border: 0px solid gray;
}*/

a {text-decoration: none;
color: black;
color: #222;
}
-->
</style>
</head>

<body>

<div id="menu">
  <dl>
	  <dt><img src="images/menu/menu_011.gif" width="194" height="174" border="0"></dt>
  </dl>
   
     <dl>
		<dt onmouseover="javascript:montre();"><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu1','','images/menu/menur_02.gif',1)"><img src="images/menu/menu_02.gif" name="menu1" width="106" height="174" border="0"></a></dt>
  </dl>	
<dl>			
		<dt onmouseover="javascript:montre('smenu1');"><a href="" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu2','','images/menu/menur_034.gif',1)"><img name="menu2" border="0" src="images/menu/menu_034.gif"></a></dt>
			<dd id="smenu1">
				<ul>
					<li><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu7','','images/menu/fruitslegumes.jpg',1)"><img name="menu7" border="0" src="images/menu/fruitslegumesr.gif" /></a></li>
				  <li><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu8','','images/menu/fruitslegumesbio.jpg',1)"><img name="menu8" border="0" src="images/menu/fruitslegumesbior.gif" /></a></li>
			  </ul>
			</dd>
  </dl>
    <dl>
		<dt onmouseover="javascript:montre();"><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu3','','images/menu/menur_04.gif',1)"><img name="menu3" border="0" src="images/menu/menu_04.gif" /></a></dt>
	</dl>
    <dl>
		<dt onmouseover="javascript:montre();"><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu4','','images/menu/menur_05.gif',1)"><img name="menu4" border="0" src="images/menu/menu_05.gif"></a></dt>
	</dl>
  <dl>
		<dt onmouseover="javascript:montre();"><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu5','','images/menu/menur_06.gif',1)"><img name="menu5" border="0" src="images/menu/menu_06.gif"></a></dt>
  </dl>
    <dl>
    <dt onmouseover="javascript:montre();"><a href="accueil.php" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('menu6','','images/menu/menur_07.gif',1)"><img name="menu6" border="0" src="images/menu/menu_07.gif"></a></dt>
	</dl>
</div>

<table width="100%" border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td><div align="center">ceci est un test</div></td>
  </tr>
</table>

</body>
</html>
[/i][/i][/i][/i][/i][/i]
Modifié par neojer (18 Dec 2007 - 19:47)