Foros del Web » Creando para Internet » CSS »

[SOLUCIONADO] Submenu sale descentrado

Estas en el tema de Submenu sale descentrado en el foro de CSS en Foros del Web. Hola, Los menus se despliegan correctamente pero salen todos a la izquierda en vez de debajo de su correspondiente zona. Aqui podeis ver lo que ...
  #1 (permalink)  
Antiguo 26/12/2013, 15:45
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
Pregunta Submenu sale descentrado

Hola,

Los menus se despliegan correctamente pero salen todos a la izquierda en vez de debajo de su correspondiente zona.

Aqui podeis ver lo que ocurre al hacer hover sobre los tres primeros enlaces del menu principal (el grande)

http://test.javierdelpozo.com/

el codigo CSS es:

Código CSS:
Ver original
  1. #principal {
  2.     margin-bottom:17px;
  3.     float:right;
  4. }
  5. #principal ul {
  6.     margin:0;
  7. }
  8. #principal ul li {
  9.     display:inline;
  10.     font-size:1em;
  11.     font-family:'Droid Sans', sans-serif;
  12.     text-transform:uppercase;
  13. }
  14. #principal ul li a {
  15.     text-decoration:none;
  16.     color:#f18e00;
  17.     padding:17px 5px 17px 5px;
  18.     margin-right:17px;
  19. }
  20. #principal ul li a:hover {
  21.     color:#FFF;
  22.     background-color:#f18e00;
  23. }
  24. #principal .activo a {
  25.     color:#FFF;
  26.     background-color:#f18e00;
  27. }
  28. #principal .ultimo a {
  29.     margin-right:0;
  30. }
  31. #principal ul ul {
  32.     display:none;
  33.     position:absolute;
  34.     margin-top:17px;
  35. }
  36. #principal ul li:hover ul {
  37.     display:block;
  38.     z-index:2;
  39. }
  40. #principal ul ul li {
  41.     margin:0;
  42.     font-size:1em;
  43.     font-family:'Droid Sans', sans-serif;
  44.     text-transform:uppercase;
  45. }
  46. #principal ul ul li a {
  47.     width:auto;
  48.     display:block;
  49.     padding:5px;
  50.     background-color:#f18e00;
  51.     color:#FFF;
  52. }
  53. #principal ul ul li a:hover {
  54.     color:#666;
  55. }

¿Cómo puedo solucionarlo?
  #2 (permalink)  
Antiguo 26/12/2013, 16:18
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 4 meses
Puntos: 2114
Respuesta: Submenu sale descentrado

Tienes que usar una posición relativa en cada elemento de la lista, para que la posición absoluta de la sublista sea relativa a ese elemento.

Código CSS:
Ver original
  1. #principal ul li {
  2.   position: relative;
  3. }

Luego para tu siguiente pregunta, es porque header tiene un overflow:hidden.
  #3 (permalink)  
Antiguo 27/12/2013, 06:47
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Submenu sale descentrado

Si pongo el positicion:relative no se despliega el submenu. No se como solucionarlo.

¿Alguna idea de que puedo hacer?
  #4 (permalink)  
Antiguo 27/12/2013, 07:13
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 4 meses
Puntos: 2114
Respuesta: Submenu sale descentrado

Cita:
Iniciado por MindPaniC Ver Mensaje
Si pongo el positicion:relative no se despliega el submenu. No se como solucionarlo.

¿Alguna idea de que puedo hacer?
Cita:
Iniciado por pzin Ver Mensaje
Luego para tu siguiente pregunta, es porque header tiene un overflow:hidden.
  #5 (permalink)  
Antiguo 27/12/2013, 07:49
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Submenu sale descentrado

Si quito el overflow:hidden; se me destroza el diseño y se colapsa el header
  #6 (permalink)  
Antiguo 27/12/2013, 07:58
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 13 años, 3 meses
Puntos: 397
Respuesta: Submenu sale descentrado

Prueba entonces con un microclearfix

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #7 (permalink)  
Antiguo 27/12/2013, 08:12
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Submenu sale descentrado

El microclearfix funciona perfectamente pero el submenu sigue sin salir debajo de cada item.

Lo he puesto asi:

Código CSS:
Ver original
  1. #principal ul li {
  2.     position:relative;
  3.     display:inline;
  4.     font-size:1em;
  5.     font-family:'Droid Sans', sans-serif;
  6.     text-transform:uppercase;
  7. }

¿que mas puedo hacer?
  #8 (permalink)  
Antiguo 27/12/2013, 08:21
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 13 años, 3 meses
Puntos: 397
Respuesta: Submenu sale descentrado

Tienes que jugar con los display de los li

Para los elementos del primer nivel del menú usa display: inline-block;

Código CSS:
Ver original
  1. #principal ul li {
  2.     display: inline-block;
  3.     font-size: 1em;
  4.     font-family: 'Droid Sans', sans-serif;
  5.     text-transform: uppercase;
  6. }

Para los elementos del segundo nivel usa display: block;

Código CSS:
Ver original
  1. #principal ul ul li {
  2.     margin: 0;
  3.     display: block;
  4.     font-size: 1em;
  5.     font-family: 'Droid Sans', sans-serif;
  6.     text-transform: uppercase;
  7. }

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #9 (permalink)  
Antiguo 27/12/2013, 08:25
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Submenu sale descentrado

Muchas gracias!!!

Ahora funciona perfectamente. Lo siguiente que tengo que hacer es preparar la web para moviles, es responsive, y necesito hacer que al tocar con el dedo en un menu se despliegue el submenu y desplace los inferiores por que en el media query para moviles los menus van en vertical. Eso se hara con CSS o es jquery??
  #10 (permalink)  
Antiguo 27/12/2013, 08:42
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 13 años, 3 meses
Puntos: 397
Respuesta: Submenu sale descentrado

Lo de el diseño en vertical del menú si lo puedes hacer con CSS lo de desplegar el submenú después de un click si es mejor hacerlo con Javascript

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #11 (permalink)  
Antiguo 27/12/2013, 08:43
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Submenu sale descentrado

Ok Muchas gracias por todo, cierro este hilo y sigo trabajando que voy muy justo de tiempo jejejeje

Saludos!!
  #12 (permalink)  
Antiguo 27/12/2013, 08:45
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 4 meses
Puntos: 2114
Respuesta: Submenu sale descentrado

Normalmente en dispositivos táctiles funciona :hover perfectamente cuando en esa acción hay un elemento que se muestra, que en tu caso es ul, así que debería de funcionar bien sin JavaScript (o como le llamas tú, jQuery).
  #13 (permalink)  
Antiguo 27/12/2013, 08:48
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 13 años, 3 meses
Puntos: 397
Respuesta: Submenu sale descentrado

Cita:
Iniciado por pzin Ver Mensaje
Normalmente en dispositivos táctiles funciona :hover perfectamente cuando en esa acción hay un elemento que se muestra, que en tu caso es ul, así que debería de funcionar bien sin JavaScript (o como le llamas tú, jQuery).
Pues mira que yo he tenido problemas es con los links que llevan a otras paginas, cuando hago touch me lleva a la pagina en vez de desplegarme el submenu con :hover

O será que estaba haciendo algo mal

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #14 (permalink)  
Antiguo 27/12/2013, 08:51
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 4 meses
Puntos: 2114
Respuesta: Submenu sale descentrado

Cita:
Iniciado por jonni09lo Ver Mensaje
Pues mira que yo he tenido problemas es con los links que llevan a otras paginas, cuando hago touch me lleva a la pagina en vez de desplegarme el submenu con :hover
A mi siempre me ha ido bien si algún elemento descendiente del cual tenga :hover pasa de un display: none a display: block/inline/inline-block o de un visibility: hidden a un visibility: visible.

Y en caso de que no exista ese cambio, entonces si que hay que tirar de JavaScript (a lo mejor un ontouchstart="this.classList.toggle('hover')").
  #15 (permalink)  
Antiguo 27/12/2013, 08:52
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 13 años, 3 meses
Puntos: 397
Respuesta: Submenu sale descentrado

Pues tendré que volver a revisar ese código y si no a demandar a la compañía por hacer cosas defectuosas

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #16 (permalink)  
Antiguo 27/12/2013, 08:53
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Submenu sale descentrado

Perfecto!! gracias, a ver si soy capaz de hacerlo todo bien.

Saludos

Etiquetas: background, color, hover, submenu
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 08:20.