Bonjour à tous,
Le code ci-dessous correspond à un menu déroulant CSS basé sur la pseudo-classe :hover des éléments LI. Au survol des li.sub, le contenu du descendant div.menu_item est affiché et reste affiché au passage de la souris au dessus du contenu.
Ceci fonctionne sous FF 3.6, IE7, IE8 mais pas sous Chrome pour le dernier élément de menu, qui contient un select multiple. Sous Chrome 9.0, le passage de la souris au dessus des éléments option ferme le sous-menu. En supprimant la sélection multiple du select, je n'ai plus ce problème. Si le select ne contient aucune option, pas de problème.
Quelqu'un a t'il déjà rencontré ce problème ?
Le code ci-dessous correspond à un menu déroulant CSS basé sur la pseudo-classe :hover des éléments LI. Au survol des li.sub, le contenu du descendant div.menu_item est affiché et reste affiché au passage de la souris au dessus du contenu.
Ceci fonctionne sous FF 3.6, IE7, IE8 mais pas sous Chrome pour le dernier élément de menu, qui contient un select multiple. Sous Chrome 9.0, le passage de la souris au dessus des éléments option ferme le sous-menu. En supprimant la sélection multiple du select, je n'ai plus ce problème. Si le select ne contient aucune option, pas de problème.
Quelqu'un a t'il déjà rencontré ce problème ?
<!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">
<head>
<title>Chrome options test</title>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<style type="text/css">
.dynamicCssMenu li {
display: inline ;
float:left;
position:relative;
}
.dynamicCssMenu li.sub .dropdown{
height: 30px; border: 1px solid gray ; border-right : 0px;
}
.dynamicCssMenu > li > ul {
top:21px;
left:-32px;
text-decoration:none;
border:0;
}
.dynamicCssMenu > li > .banner_item
{
display:none; position:absolute; top:30px; left:0; height:0; overflow:hidden;
}
/** Affichage des éléments du menu */
.dynamicCssMenu > li:hover > .banner_item
{
display:block;height:auto; position:absolute; left: auto; background:#fff; border:1px solid gray; overflow:visible; border-top: 0px;
}
</style>
</head>
<body>
<ul class="dynamicCssMenu">
<li class="sub"><div class="dropdown">Menu 1</div>
<div class="banner_item">
<ul>
<li>item 1</li>
<li>item 2</li>
<li>item 3</li>
</ul>
</div>
</li>
<li class="sub"><div class="dropdown">Menu 2</div>
<div class="banner_item">
<form action="#">
<div>
<input type="text" value="test"/>
</div>
</form>
</div>
</li>
<li class="sub"><div class="dropdown">Menu 3</div>
<div class="banner_item">
<form action="#">
<div>
<select multiple="multiple">
<option value="one">one</option>
<option value="two">two</option>
<option value="three">three</option>
</select>
</div>
</form>
</div>
</li>
</ul>
</body>
</html>