28220 sujets

CSS et mise en forme, CSS3

Voilà mon soucis,

Je pense que le titre est explicite surtout avec la capture suivante
upload/830-PblMenu.JPG

Voici mon code
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<head>
<title>Menu GuizMo</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<link href="GuizMoTest.css" rel="stylesheet" type="text/css">
</head>

<body>
	<h1>Accueil</h1>
		<ul class="menu">
			<li><img class="gauche" alt="" src="boussole.bmp" /><a href="">Accueil</a></li>
			<li><a href="">Contact</a></li>
		</ul>
	<h1>Sixtine</h1>
		<ul class="menu">
			<li><a href="">Nouvelles</a></li>
			<li><a href="">Graphiques</a></li>
			<li><a href="">Albums Photos</a></li>
		</ul>
	<h1>Albums Photos</h1>
		<ul class="menu">
			<li><a href="">Sixtine</a></li>
			<li><a href="">Notre mariage</a></li>
			<li><a href="">Autres albums</a></li>
		</ul>
	<h1>Liens Divers</h1>
		<ul class="menu">
			<li><a href="">Informatique</a></li>
			<li><a href="">Chants</a></li>
			<li><a href="">Voile</a></li>
			<li><a href="">Chasse à courre</a></li>
		</ul>
	<h1>Lieux préférés</h1>
		<ul class="menu">
			<li><a href="">Val-André</a></li>
			<li><a href="">St Quay Portrieux</a></li>
			<li><a href="">Berry</a></li>
		</ul>
	<h1>Nos voyages</h1>
		<ul class="menu">
			<li><a href="">La Crête - Juil 02</a></li>
			<li><a href="">La Tunisie - Mars 03</a></li>
		</ul>
	<h1><a href="">Téléchargements</a></h1>
	<h1><a href="">CV</a></h1>
</body>
</html>


et mon css
/* Mise en forme des pages */

* { padding: 0;	margin: 0; }

/* Le menu */

.menu {
	width: 150px;
	font-size: 8pt;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	}

.menu ul, .menu li {
	list-style-type: none;
	}

.menu li a {
	text-decoration: none;
	display: block;
	background-color: #3399FF;
	color: white;
	font-weight: normal;
	height: 17px;
	line-height: 17px;
	}

.menu li a:hover {
	text-decoration: none;
	display: block;
	background: #003399;
	color: white;
	font-weight: normal;
	}

h1	{
	width: 150px;
	height: 20px;
	line-height: 20px;
	margin-top: 5px;
	border: 1px dashed #0099FF;
	font-family: Verdana, Arial, Helvetica, sans-serif;	
	font-size: 8pt;
	color: #0099FF;
	text-align: center;
	}

h1 a	{
	text-decoration: none;
	color: #0099FF;
	}

h1 a:hover	{
	text-decoration: none;
	color: #0099FF;
	}

h1 a:visited	{
	text-decoration: none;
	color: #0099FF;
	}

.gauche {
	float: left;
	}


Si quelqu'un peut m'aider et surtout m'expliquer ce qui ne va pas ce serai super Smiley cligne
Modifié par GuizBizet (15 May 2006 - 11:39)
Bonjour,
Si l'image est pour faire une puce graphique, il faudrait soit la placer en background de tes li ou soit utiliser la propriété css list-style-image.
Plus d'infos sur Mammouthland.
Merci igor pour ta réponse mais en fait ce sera une image différente pour chaque LI

Une idée pour régler mon problème ? Smiley bawling
cedb3 je vois pas ce que tu veux dire ???

peux tu m'expliquer plus en détail ?
je dois faire plein de li du style : li 1 / li 2 etc ...
il n'y a pas une solution pour que ma class gauche marche avec une image ?
Modifié par GuizBizet (10 Mar 2005 - 17:36)
ben pour chaque <li> tu colles un id particulier, et dans ton css tu fixes l'image qui va bien avec ...
genre :
li .nomdeclasse{background:url(images/nomdeclasse.png);}

enfin j'ai pas essayé mais c'est ce que je ferais...
Mais ne fais pas de div hein...
Modifié par chu (10 Mar 2005 - 17:34)
Salut,

Chez moi c'est uniquement sous IE que ça coince, ton code donne le bon résultat sous FF. En y regardant de plus près, c'est un problème classique IE : comme tu n'as pas donné d'indication de hauteur à ton conteneur (li) il fait un peu n'importe quoi. A ma connaissance, seul un hack "height:1%;" dans la définition du "menu li" règle le problème.

Si qqun a mieux... Smiley rolleyes

Ceci dit, mieux vaut suivre les conseils qui t'ont été donnés parmi les réponses précédentes.
Voilà je pense avoir réglé mon problème mais j'ai pas encore tester sour FF je ferais ça ce soir de chez moi

Si ça peut aider quelqu'un voilà ce que j'ai fais

Code CSS
/* Mise en forme des pages */

* { padding: 0;	margin: 0; }


#navigation {
	width: 200px;
	margin-left: 20px;
	margin-top: 20px;
	font-size: 8pt;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	background-image: url(Images/Sixtine.jpg);
	background-repeat: no-repeat;
	}	

/* Le menu */

.menu {
	width: 150px;
	margin-left: auto;
	margin-right: auto;
	}

ul.menu  {
	border: 1px solid #330099;
	filter:alpha(opacity=70);
	}

.menu li {
	list-style-type: none;
	height: 15px;
	}

.menu li a {
	text-decoration: none;
	display: block;
	background-color: #ffffff;
	color: #003399;
	font-weight: normal;
	height: 15px;
	line-height: 15px;
	}

.menu li a:hover {
	text-decoration: none;
	display: block;
	background: #c4dce9;
	color: #003399;
	font-weight: normal;
	}

h1	{
	width: 150px;
	height: 20px;
	line-height: 20px;
	margin-top: 5px;
	margin-left: auto;
	margin-right: auto;
	border: 1px solid #003399;
	background-color: #003399;
	font-family: Verdana, Arial, Helvetica, sans-serif;	
	font-size: 8pt;
	color: #ffffff;
	text-align: center;
	cursor: pointer;
	}

h1 a	{
	text-decoration: none;
	border: 1px solid #003399;
	background-color: #003399;
	color: #ffffff;
	}

h1 a:hover	{
	text-decoration: none;
	border: 1px solid #003399;
	background-color: #003399;
	color: #ffffff;
	}

h1 a:visited	{
	text-decoration: none;
	border: 1px solid #003399;
	background-color: #003399;
	color: #ffffff;
	}

.imggauche {
	float: left;
	}


et le html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<head>
<title>Menu GuizMo</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<link href="GuizMoTest.css" rel="stylesheet" type="text/css">
</head>
<body>
	<div id="navigation">
	<h1>Accueil</h1>
		<ul class="menu">
			<li><img class="imggauche" alt="Icone Accueil" src="Images/Menu/home.gif" /><a href="">Accueil</a></li>
			<li><img class="imggauche" alt="Icone Contact" src="Images/Menu/contact.gif" /><a href="">Contact</a></li>
		</ul>
	<h1>Sixtine</h1>
		<ul class="menu">
			<li><img class="imggauche" alt="Icone Nouvelles" src="Images/Menu/suiv.gif" /><a href="">Nouvelles</a></li>
			<li><img class="imggauche" alt="Icone Graphiques" src="Images/Menu/suiv.gif" /><a href="">Graphiques</a></li>
			<li><img class="imggauche" alt="Icone Albums Photos" src="Images/Menu/picture.gif" /><a href="">Albums Photos</a></li>
		</ul>
	<h1>Albums Photos</h1>
		<ul class="menu">
			<li><img class="imggauche" alt="Icone Sixtine" src="Images/Menu/picture.gif" /><a href="">Sixtine</a></li>
			<li><img class="imggauche" alt="Icone mariage" src="Images/Menu/picture.gif" /><a href="">Notre mariage</a></li>
			<li><img class="imggauche" alt="Icone albums" src="Images/Menu/picture.gif" /><a href="">Autres albums</a></li>
		</ul>
	<h1>Liens Divers</h1>
		<ul class="menu">
			<li><img class="imggauche" alt="Icone Informatique" src="Images/Menu/windowsXP.gif" /><a href="">Informatique</a></li>
			<li><img class="imggauche" alt="Icone Chants" src="Images/Menu/music.gif" /><a href="">Chants</a></li>
			<li><img class="imggauche" alt="Icone Voile" src="Images/Menu/voile.gif" /><a href="">Voile</a></li>
			<li><img class="imggauche" alt="Icone Chasse à courre" src="Images/Menu/trompe.gif" /><a href="">Chasse à courre</a></li>
		</ul>
	<h1>Lieux préférés</h1>
		<ul class="menu">
			<li><img class="imggauche" alt="Icone val-André" src="Images/Menu/suiv.gif" /><a href="">Val-André</a></li>
			<li><img class="imggauche" alt="Icone St Quay" src="Images/Menu/suiv.gif" /><a href="">St Quay Portrieux</a></li>
			<li><img class="imggauche" alt="Icone La Croslaie" src="Images/Menu/suiv.gif" /><a href="">La Croslaie</a></li>
		</ul>
	<h1>Nos voyages</h1>
		<ul class="menu">
			<li><img class="imggauche" alt="Icone Crête" src="Images/Menu/suiv.gif" /><a href="">La Crête - Juil 02</a></li>
			<li><img class="imggauche" alt="Icone Tunisie" src="Images/Menu/suiv.gif" /><a href="">La Tunisie - Mars 03</a></li>
		</ul>
	<h1><a href="">Téléchargements</a></h1>
	<h1><a href="">CV</a></h1>
	</div>
</body>
</html>


et voilà ce que ça donne. je sais que la propriété filter est pas valide css mais c'est juste pour me marrer et elle sera enlevée sur la version finale.

Capture
upload/830-MenuOK.JPG

Merci à tous de votre aide Smiley cligne
Administrateur
Juste en passant, il est préférable d'éviter de donner une classe à tous les éléments surtout si elle se répète (class="imggauche").
Il suffit de désigner le bloc parent, c'est bien suffisant.

Dans ton cas, tu peux supprimer tous les class="imggauche" et désigner tes images par
.menu li img {...}


Ça facilitera la lecture et les modifications ensuite Smiley smile

EDIT : de même , tous les class="menu" sont inutiles sur les <ul>. Tu peux profiter du nom du parent div id="navigation" en désignant l'ensemble de tes "menu" ainsi :
#navigation ul {...}


etc. Au final, seul ton parent "#navigation" a besoin d'un nom Smiley smile

Donc tes images du menus seront désignées par :
#navigation ul li img {...}


Ou plus simplement :
#navigation img {...}

Modifié par Raphael (11 Mar 2005 - 15:20)
merci de tes conseils raphael je vais essayer de modifier tout ça.

J'avais une aitre question : est-ce que j'emploie bien les h1 ?