28172 sujets

CSS et mise en forme, CSS3

Bonjour à tous,
Je cherche à faire un menu déroulant tout en CSS. En m'inspirant de sources web, voilà les styles que j'utilise et qui fonctionne très bien :
body {
	font: .8em Verdana, Arial, Helvetica, sans-serif;
}
#menu1 {
	list-style: none;
	margin:0;
	padding:0;
}
#menu1 li {
	position: relative;
	float: left;
	width: 100px;
	padding: 2px;
	background: #FC0;
	text-align: center;
	height: 20px;
}
#menu1 li a {
	text-decoration: none;
}
#menu1 li .menu2 {
	list-style: none;
	display: none;
	position: absolute;
	left: 0;
	top: 24px;
	margin: 0;
	padding: 0;
}
#menu1 li:hover {
	background: #F30;
}
#menu1 li:hover .menu2 {
	display: block;
}
Mais le li:hover ne fonctionne pas sous IE 6 (sauf erreur de ma part).
Alors je me suis dit que je vais "tout basculer" sur l'élément a :
body {
	font: .8em Verdana, Arial, Helvetica, sans-serif;
}
#menu1 {
	list-style: none;
	margin:0;
	padding:0;
}
#menu1 li {
	float: left;
}
#menu1 li a {
	display: block;
	position: relative;
	width: 100px;
	padding: 2px;
	background: #FC0;
	text-align: center;
	height: 20px;
	text-decoration: none;
}
#menu1 li .menu2 {
	display: none;
	position: absolute;
	left: 0;
	top: 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}
#menu1 a:hover {
	background: #F30;
}
#menu1 a:hover .menu2 {
	display: block;
}
Par contre dans ce cas, cela ne fonctionne pas, je ne vois pas apparaître les éléments déroulant.
Quelle est mon erreur ?
Merci de votre aide
Modifié par krakkos (15 Jun 2009 - 14:12)
Bonsoir,

Les pseudos classes ne sont pas prises en compte par Internet Explorer 6.

Néanmoins, j'ai trouvé cet article qui devrait t'intéresser.

A tester ! Smiley cligne .
jQz a écrit :
Les pseudos classes ne sont pas prises en compte par Internet Explorer 6.


Elles sont tout à fait prise en compte et correctement interprétées, pour l'élément <a> uniquement.

Un menu déroulant, en général ça se conçoit avec un peu de JavaScript. Dans le futur ce ne sera peut-être plus nécessaire, mais actuellement c'est plus sûr d'un point de vue compatibilité.
a écrit :
jQz a écrit :
Les pseudos classes ne sont pas prises en compte par Internet Explorer 6.


J'aurais dû me renseigner d'avantage Smiley confus ...

Mais merci d'avoir corrigé mon erreur Smiley cligne .
@ Laurie-Anne : faire des menus déroulants en JavaScript, certes, mais mon objectif reste bien de le faire en CSS.

Donc ma question reste entière : pourquoi le menu2 n'apparait-il pas au survol des liens a:hover, alors que cela fonctionne bien sur le survol des items de liste li:hover ?
Merci de votre aide.
Modifié par krakkos (16 Jun 2009 - 09:08)