Aide - Recherche - Membres - Calendrier
Version complète : Centrer une liste
Forum Développeur - Administration serveur, programmation et base de données > Programmation > xHTML et CSS
_Nicolas_
Bonjour à tous,


J'ai un petit problème pour centrer mon menu, fait a partir d'une liste. J'ai précisé un "text-align:center" dans la balise <ul> mais ça n'a pas l'air de fonctionner. De plus j'ai donné la propriété "float : left" aux balises <li>, ce qui a,apparemment , pour effet de donner cette propriété à la balise <ul> ??!! le titre vient se coller au dernier élément du menu. Je ne sais pas si c'est clair donc voici le code :

css
CODE

/* CSS Document */
body {
background-color: #FFF;
margin: 0;
padding: 0;
text-align: center;
}
#conteneur{
width:750px;
margin-left: auto;
margin-right: auto;
text-align: left;
padding: 0;
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:13px;
list-style-image: url(image/puce.gif);
}
#header {
height:105px;
background:url("image/top.gif") no-repeat;
}
#corps{
margin:0px;
padding: 0 20px 0 20px;
text-align: justify;
}
h1{
color:#735182;
font-size:16px;
}
.imp {
color: #735182;
font-weight: bold;
}
img{
border:0;
}
.glossaire{
float:left;
color: #735182;
font-weight: bold;
width:140px;
text-align:left;
}
.definition{
margin:0 0 10px 150px;
padding:0;
}
.bloc {
margin:5px 30px 5px 0;
float:left;
text-align:left;
}
.espace {
clear: both;
text-align:center;
margin:10px 0 0 0;
}
#news{
width:180px;
height:230px;
float:right;
margin:0 0 5px 5px;
padding:15px;
background:url("image/news.gif") no-repeat;
text-transform:uppercase;
}
#listemenu{
margin:0;
padding:0;
font-size:14px;
text-align:center;
font-weight:bold;
}
li.menu{
padding:4px 0 0 0;
margin: 0;
width:111px;
height:30px;
display:block;
background-image:url("image/menu.gif");
background-repeat:no-repeat;
background-position:top;
float:left;
list-style: none;
}
#listemenu a:active {
text-decoration: none;
color: #996699;
font-size:15px
}
#listemenu a:link {
text-decoration: none;
color: #666;
}
#listemenu a:visited {
text-decoration: none;
color: #666;
}
#listemenu a:hover {
text-decoration: none;
color: #996699;
font-size:15px;
font-weight:900;
}



html
CODE

<!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"><!-- InstanceBegin template="Templates/itcee.dwt" codeOutsideHTMLIsLocked="false" -->

<head>

<title>ITcee</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<link href="style.css" rel="stylesheet" type="text/css"/>
<meta name="description" content="ITcee : Voice and Data network, Call Center, CTI Integration, Customer contact performance, Voice and data network cost Analysis, Network architecture, CRM integration, PBX, Voice over IP, Fax Server, e-mai distribution, Interactive voice response unit (IVR), all those domain are familiar to us."/>
<meta name="Robots" content="All"/>
<meta HTTP-EQUIV="Content-language" CONTENT="fr, en"/>
<meta http-equiv='Page-Exit' content='progid:DXImageTransform.Microsoft.GradientWipe(duration=0.5, gradientsize=0.5)'/>
</head>

<body>
<div id="conteneur">
<div id="header"></div>

<ul id="listemenu">
<li class="menu"><a href="index.htm">Home</a></li>
<li class="menu"><a href="about.htm">About</a></li>
<li class="menu"><a href="services.htm">Services</a></li>
<li class="menu"><a href="news.htm">News</a></li>
<li class="menu"><a href="contact.htm">Contacts</a></li>
<li class="menu"><a href="glossary.htm">Glossary</a></li>
</ul>

<div id="corps">

<h1>News</h1>
Coming soon...

</div>
</div>
</body>
</html>


Un grand merci d'avance.


Cerebral
Salut,

tu veux centrer une liste horizontalement, c'est bien ca ?
Dans ce cas, pas besoin de float mais juste un display:inline appliqués aux <li>. Et pour le centrage, ton align du texte est toujours d'application. Ensuite pour les espaces, joue avec les margin-left/right.
_Nicolas_
En fait, je ne peux pas utiliser le "in-line" car j'ai besoin que mes <li> soit en block pour leur donner une hauteur et une largeur. Mais merci beaucoup pour ta réponse.
Thanh
Salut,

pk tu mets pas le text-align: center appliqué au li?

regardes mon blog et le thème : the bride.

++
RaphaelG
QUOTE(solo @ May 13 2005, 08:51 AM)
pk tu mets pas le text-align: center appliqué au li?

Cela ne va centrer que les éléments inline contenus dans les <li>, mais pas le menu en entier icon_confused.gif

Pour centrer le menu entier (<ul>), il faut effectivement appliquer :
- text-align sur <ul>, mais ça ne fonctionnera que si les <li> sont en inline
- donner une largeur à <ul> et utiliser les marges automatiques latérales
- positionner en absolu à l'aide de marges négatives

Normallement, tu devrais avoir toutes les solutions dans ce tuto.
_Nicolas_
Merci beaucoup, je regarde tout ça. Mais pour cet effet de "float" qui s'applique à la balise <ul>, quelqu'un peut-il me dire d'où cela vient ?
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2009 Invision Power Services, Inc.