Menu déroulant vertical en CSS

Bonjour,

J'essaye de tranformer un menu "fixe" en un menu déroulant vertical en HTML/CSS.
Le probleme est que j'ai suivi plusieurs tuto mais je n'y arrive pas.
Pouvez vous m'aider a modifier mon code CSS ?
Merci

Code HTML du menu

<div id="menu">
		<ul>
						<li class="current_page_item"><a href="index.html">Accueil</a></li>
						<li><a href="presentation.html">Qui sommes-nous ? </a></li>
						<ul class="sous-menu">
								<li> <a href="quiSommesNous.html"> Qui sommes-nous? </a></li>
								<li> <a href="notreConcept.html"> Notre concept </a></li>
								<li> <a href="nosValeurs.html"> Nos valeurs </a></li>
						</ul>
						<li><a href="polygonum.html">Le polygonum </a></li>
						<ul class="sous-menu">
								<li> <a href="originePoly.html"> Les origines du polygonum </a></li>
								<li> <a href="composantsPoly.html"> Les composants du polygonm </a></li>
						</ul>
						<li><a href="https://www.moraz.fr/6-baume-reparateur" target="_blank">Commander le produit </a></li>
						<li><a href="contact.html">Nous contacter</a></li>
						<li class="last"><a href="https://www.moraz.fr/" target="_blank">Nos autres produits</a></li>
						
		
		</ul>
		<br/><br/>
	</div>


Code CSS du menu (encore incomplet)
#menu {
background-color : #FFFFF3;
width : 1000px;
margin : auto;
}

#menu ul {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px;
	list-style: none;
	line-height: normal;
	text-align: center;
}

#menu li {
	display: inline-block;
}

#menu a {
	display: block;
	padding: 11px 14px 11px 14px;
	background-color : rgb(123, 143, 56);
	text-decoration: none;
	text-transform: uppercase;
	text-align: center;
	font-family: 'Oswald', arial narrow, sans-serif;
	font-size: 15px;
	font-weight: 200;
	color: #FFFFFF;
	border: none;
}

#menu .current_page_item a {
	background: rgb(246, 169,36);
	}

3 réponses

  1. voilà le principe :

    <!DOCTYPE html>
    <html>
    <head>
    <title></title>
    <style type="text/css">
    	.sousmenu {
    		display: none;
    	}
    
    	.menu > li:hover > .sousmenu {
    		display: block;
    	}
    
    
    </style>
    </head>
    <body>
    	<ul class="menu">
    		<li>
    			<div>Nom de la rubrique 1</div>
    			<ul class="sousmenu">
    				<li>smenu 1</li>
    				<li>smenu 2</li>
    				<li>smenu 3</li>
    			</ul>
    		</li>
    		<li>
    			<div>Nom de la rubrique 2</div>
    			<ul class="sousmenu">
    				<li>smenu 1</li>
    				<li>smenu 2</li>
    				<li>smenu 3</li>
    			</ul>
    		</li>
    	</ul>
    </body>
    </html>


    les sous menu doivent être dans les li du menu
    1
    1. pour un menu horizontal :

      <!DOCTYPE html>
      <html>
      <head>
      <title></title>
      <style type="text/css">
      	* {
      		padding : 0;
      		margin: 0;
      	}
      	
      	.menu {
      		position: relative;
      		border: 1px solid red;
      		cursor: pointer;
      		list-style: none;
      		height: 30px;
      		width: 800px;
      	}
      	
      	.menu > li {
      		float: left;
      		border-right: 1px solid black;
      	}
      	
      	.menu .name {
      		height: 30px;
      		line-height: 30px;
      		width: 199px;
      		text-align: center;
      		font-weight: bold;
      	}
      	
      	.menu > li:last-child {
      		border-right: none;
      	}
      	
      	.menu > li:last-child .name{
      		width: 200px;
      	}
      
      	.menu .sousmenu {
      		display: none;
      		list-style: none;
      		position: absolute;
      		top: 30px;
      		left: -1px;
      		border: 1px solid green;
      		border-top-width: 2px;
      		width: 100%;
      	}
      
      	.menu li:hover > .sousmenu {
      		display: block;
      	}
      
      	.menu li:hover > .name {
      		background-color: green;
      		color: white;
      	}
      
      
      </style>
      </head>
      <body>
      	<ul class="menu">
      		<li>
      			<div class="name">Nom de la rubrique 1</div>
      			<div class="sousmenu">
      				<div>rubrique 1</div>
      				<ul>
      					<li>smenu 1</li>
      					<li>smenu 2</li>
      					<li>smenu 3</li>
      				</ul>
      			</div>
      		</li>
      		<li>
      			<div class="name">Nom de la rubrique 2</div>
      			<div class="sousmenu">
      				<div>rubrique 2</div>
      				<ul>
      					<li>smenu 4</li>
      					<li>smenu 5</li>
      					<li>smenu 6</li>
      				</ul>
      			</div>
      		</li>
      		<li>
      			<div class="name">Nom de la rubrique 3</div>
      			<div class="sousmenu">
      				<div>rubrique 3</div>
      				<ul>
      					<li>smenu 7</li>
      					<li>smenu 8</li>
      					<li>smenu 9</li>
      				</ul>
      			</div>
      		</li>
      		<li>
      			<div class="name">Nom de la rubrique 4</div>
      			<div class="sousmenu">
      				<div>rubrique 4</div>
      				<ul>
      					<li>smenu 10</li>
      					<li>smenu 11</li>
      					<li>smenu 12</li>
      				</ul>
      			</div>
      		</li>
      	</ul>
      </body>
      </html>
      1
      1. Voici un petit tutoriel pour faire un menu déroulant avec la source en html et css :

        https://blueseodesign.com/web-design/un-css-menu-deroulant-horizontal/

        Bonne chance
        0
        1. depuis le temps j'espère qu'il a réussi ça fait plus d'un an maintenant...
          0