Foros del Web » Creando para Internet » CSS »

[SOLUCIONADO] menu vertical, desplazamiento de elementos no deseado

Estas en el tema de menu vertical, desplazamiento de elementos no deseado en el foro de CSS en Foros del Web. Estoy creado un menú vertical. Creo que lo tengo todo bien, pero hay un problema que no sé detectar. Este es el menú Como se ...
  #1 (permalink)  
Antiguo 22/02/2014, 08:06
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 12 años
Puntos: 84
menu vertical, desplazamiento de elementos no deseado

Estoy creado un menú vertical.

Creo que lo tengo todo bien, pero hay un problema que no sé detectar.

Este es el menú



Como se puede ver, al pasar el puntero para abrir un submenú, el resto de <li> del menú principal de la izquierda se desplazan hacia abajo.

Es un problema que no sé resolver.

¿Cómo podría hacerlo?

He creado el siguiente HTML y CSS y he realizado varias pruebas, pero ninguna logra evitar ese desplazamiento.

menu.html

Código HTML:
Ver original
  1. <div id="menu">
  2.             <ul class="menu">
  3.                 <li><a href="">Inicio</a></li>
  4.                 <li>
  5.                                     <p>uno</p>
  6.                                     <ul>
  7.                                             <li><a href="">otro</a></li>
  8.                                             <li><a href="">otro</a></li>
  9.                                             <li><a href="">otro</a></li>
  10.                                     </ul>
  11.                 </li>
  12.                 <li><a href="">otro</a></li>
  13.                 <li><a href="">otro</a></li>
  14.                                 <li>
  15.                                     <p>otro</p>
  16.                                     <ul>
  17.                                             <li><a href="">otro1</a></li>
  18.                                             <li><a href="">otro2</a></li>
  19.                                             <li><a href="">otro3</a></li>
  20.                                     </ul>
  21.                 </li>
  22.             </ul>
  23.         </div>

menu.css

Código CSS:
Ver original
  1. *{
  2.     margin:0px;
  3. }
  4.  
  5. #menu{
  6.     position:fixed;
  7.     display:block;
  8.     float:left;
  9.     width:10%;
  10.    
  11.     border-top:solid hsl(210, 100%, 55%) 5px;
  12. }
  13.  
  14. ul, ol{
  15.     list-style: none;
  16.    
  17.     border:solid black 1px;
  18. }
  19.  
  20. .menu>li{
  21.     display:block!important;
  22.     position:relative;
  23.     width:100%;
  24. }
  25.  
  26. .menu li ul{
  27.     display:none;
  28. }
  29.  
  30. .menu li:hover >ul{
  31.     display:inline-block;
  32.    
  33.     position:relative;
  34.    
  35.     float:left;
  36.    
  37.     width:100%;
  38.  
  39.     margin-top:-30%;
  40.     margin-left:100%;
  41.    
  42.     border:solid red 1px;
  43. }
  44.  
  45. /*define el estilo de los enlaces*/
  46.  
  47. .menu a:first-letter, p:first-letter{
  48.     color:hsl(210, 100%, 55%);
  49.     font-weigth:bold;
  50. }
  51.  
  52. .menu li a, p{
  53.     display:block;
  54.  
  55.     padding: 10px 15px;
  56.  
  57.     margin:0%;
  58.     margin-top:0px;
  59.  
  60.     border:hidden;
  61.     border:solid transparent 1px;
  62.  
  63.     background-color:#e5e5e5;
  64.     color:#515151;
  65. }
  66.  
  67. .menu a:link{
  68.     color:#515151;
  69.     text-decoration:none;
  70. }
  71.  
  72. .menu a:visited{
  73.     color:#515151;
  74.     text-decoration:none;
  75. }
  76.  
  77. .menu a:hover, p:hover{
  78.     border-right:solid #515151 1px;
  79.     border-left:solid #515151 1px;
  80.  
  81.     background-color:#515151;
  82.  
  83.     color:white;
  84. }
__________________
Ayúdame a hacerlo por mi mismo.
  #2 (permalink)  
Antiguo 22/02/2014, 08:36
 
Fecha de Ingreso: julio-2010
Ubicación: A Coruña
Mensajes: 505
Antigüedad: 14 años, 3 meses
Puntos: 60
Respuesta: menu vertical, desplazamiento de elementos no deseado

Dejalo así

Cita:
.menu li:hover > ul{
display:block;

position:absolute;


width:100%;

margin-top:-30%;
margin-left:100%;

border:solid red 1px;
}
__________________
http://zeromm.es/
Diseñador Web | Experto en Responsive Design, CSS3 y Optimización Web.
  #3 (permalink)  
Antiguo 22/02/2014, 09:19
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 12 años
Puntos: 84
Respuesta: menu vertical, desplazamiento de elementos no deseado

:O funcionó a la primera.

¿Cual era el problema? Veo que cambiaste el display y el position, pero no entiendo por qué :S

Si me lo podrías explicar por favor.

Gracias!!
__________________
Ayúdame a hacerlo por mi mismo.
  #4 (permalink)  
Antiguo 22/02/2014, 09:49
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 3 meses
Puntos: 2114
Respuesta: menu vertical, desplazamiento de elementos no deseado

Cita:
Iniciado por guardarmicorreo Ver Mensaje
¿Cual era el problema? Veo que cambiaste el display y el position, pero no entiendo por qué :S

Si me lo podrías explicar por favor.
Cita:
Ayúdame a hacerlo por mi mismo.
Uhmmm...

Lee sobre cómo funciona el posicionamiento: http://librosweb.es/css/capitulo_5/posicionamiento.html
  #5 (permalink)  
Antiguo 22/02/2014, 10:22
 
Fecha de Ingreso: julio-2010
Ubicación: A Coruña
Mensajes: 505
Antigüedad: 14 años, 3 meses
Puntos: 60
Respuesta: menu vertical, desplazamiento de elementos no deseado

Con el "position absolute" el objeto sale del flujo del diseño y no ocupa espacio real en relación al resto de elementos. Si le pones "relative" si ocupa espacio entre los elementos, por eso se bajaban.

Saqué el float porque con el absolute no funciona.
__________________
http://zeromm.es/
Diseñador Web | Experto en Responsive Design, CSS3 y Optimización Web.
  #6 (permalink)  
Antiguo 22/02/2014, 15:26
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 12 años
Puntos: 84
Respuesta: menu vertical, desplazamiento de elementos no deseado

ahhh ahora entiendo.

muchas gracias por tu ayuda!! :D
__________________
Ayúdame a hacerlo por mi mismo.

Etiquetas: background, color, deseado, desplazamiento, elementos, hover, html, vertical
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 11:52.