Foros del Web » Creando para Internet » CSS »

alinear menu con flexbox en linea no lo consigo.

Estas en el tema de alinear menu con flexbox en linea no lo consigo. en el foro de CSS en Foros del Web. Hola amigos, resulta que quiero alinear el menú que a continuación os pongo en linea, es decir un item al lado del otro, pero no ...
  #1 (permalink)  
Antiguo 23/05/2016, 08:20
 
Fecha de Ingreso: agosto-2008
Mensajes: 606
Antigüedad: 15 años, 8 meses
Puntos: 11
alinear menu con flexbox en linea no lo consigo.

Hola amigos, resulta que quiero alinear el menú que a continuación os pongo en linea, es decir un
item al lado del otro, pero no hayo la manera en su lugar se me ponen los items debajo y no es lo que quiero. Gracias. Dejo código a ver si alguien me da una idea.



Código HTML:
Ver original
  1. <div class = "menu">
  2.             <ul>
  3.                         <div><li><a class="active"  href="index.html">inicio</a></li></div>
  4.                         <div><li><a href="avgfree.html">avg free</a></li></div>
  5.                         <div><li><a href="interface.html">interface</a></li></div>
  6.                         <div><li><a href="conclusiones.html">concluciones</a></li>
  7.                         </div>
  8.                     </ul>
  9.        
  10.             </div>

Código CSS:
Ver original
  1. .menu{
  2.         display:flex;
  3.         flex-flow: row wrap;
  4.      justify-content: center;
  5.        margin-top:0px;
  6.         width: 100%;
  7.          height:60px;
  8.         border: 1px solid green;
  9.         background:black;
  10.         }
  11.        
  12.    
  13.        
  14.        
  15.         .menu li{
  16.         display:flex;
  17.        
  18.        
  19.         position:relative;
  20.         text-decoration:none;
  21.         list-style:none;
  22.         margin-top: 0px;
  23.         margin-left: 0px;
  24.         text-align: center;
  25.         }
  26.  
  27.        
  28.         .menu li a{
  29.    
  30.         color:yellow;
  31.         text-decoration:none;
  32.         font-size:25px;
  33.         display:block;
  34.         padding:15px 82px;
  35.         }
  36.        
  37.         .menu li a:hover{
  38.             padding:15px 82px;
  39.                    
  40.             background-color: blue;
  41.         }

La idea es hacerlo con flexbox.
  #2 (permalink)  
Antiguo 26/05/2016, 14:38
Avatar de Rafael
Modegráfico
 
Fecha de Ingreso: marzo-2003
Mensajes: 9.028
Antigüedad: 21 años, 1 mes
Puntos: 1826
Respuesta: alinear menu con flexbox en linea no lo consigo.

Hum Por lo pronto te pongo que no tiene sentido anidar cada li con un div.

Los li pueden ser si quieres de bloque o inline-block, como gustes. Así que de inicio quítalos.

Para un menú, yo no uso flexbox.

Con poner un

div.menu li {display: inline-block;}

es suficiente.

Última edición por Rafael; 26/05/2016 a las 14:54
  #3 (permalink)  
Antiguo 27/05/2016, 17:43
 
Fecha de Ingreso: julio-2013
Mensajes: 14
Antigüedad: 10 años, 9 meses
Puntos: 3
Respuesta: alinear menu con flexbox en linea no lo consigo.

Concuerdo con rafael en la parte de meter cada elemento li en un div, la regla que te dio el amigo rafael allí arriba te debería de servir muy bien, pero recuerda sacar los div porque sino creo que seguira aplicando el estilo de bloque a los elementos li que estan contenidos dentro del div que por defecto es block

Código HTML:
Ver original
  1. <div class = "menu">
  2.                 <ul>
  3.                             <li><a class="active"  href="index.html">inicio</a></li>
  4.                             <li><a href="avgfree.html">avg free</a></li>
  5.                             <li><a href="interface.html">interface</a></li>
  6.                             <li><a href="conclusiones.html">concluciones</a></li>
  7.                         </ul>
  8.            
  9.                 </div>
  #4 (permalink)  
Antiguo 01/06/2016, 12:59
 
Fecha de Ingreso: agosto-2008
Mensajes: 606
Antigüedad: 15 años, 8 meses
Puntos: 11
Respuesta: alinear menu con flexbox en linea no lo consigo.

Gracias amigos, los div estaban ya quitados. probaré a ver coon inline-block
  #5 (permalink)  
Antiguo 02/06/2016, 07:08
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: alinear menu con flexbox en linea no lo consigo.

Con indicar en el padre display:flex tienes suficiente.

https://jsfiddle.net/chucq6mr/

El problema que tenías es que los elementos de la caja flexible en tu código era el elemento ul, porque cualquier hijo descendiente de un flexbox es una caja flexible.
__________________
(:

Etiquetas: alinear, background, color, html, width
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:32.