Foros del Web » Creando para Internet » CSS »

Separación entre elementos <li>

Estas en el tema de Separación entre elementos <li> en el foro de CSS en Foros del Web. Hola, estoy teniendo un problema con IE8 tengo la siguiente distribución Código HTML: <ul> <li> Menu 1 </li> <li> <div style= "display: none;" > <ul> ...
  #1 (permalink)  
Antiguo 04/12/2013, 04:47
 
Fecha de Ingreso: mayo-2007
Mensajes: 44
Antigüedad: 16 años, 11 meses
Puntos: 0
Separación entre elementos <li>

Hola, estoy teniendo un problema con IE8

tengo la siguiente distribución


Código HTML:
<ul>
    <li>Menu 1
    
    </li>
    <li>
       <div style="display: none;">
           <ul>
             <li>SubMenu1
             </li>
             <li>SubMenu2
             </li>
             <li>SubMenu3
             </li>
           </ul>
        </div>
    </li>
   <li> Menu 2
   </li>
    <li>
       <div style="display: none;">
           <ul>
             <li>SubMenu1
             </li>
             <li>SubMenu2
             </li>
             <li>SubMenu3
             </li>
           </ul>
        </div>
    </li>

.......
</ul> 
Pues bien, en Chrome y Firefox se ve perfecto pero en IE 8 se produce mucha separación entre los menus y queda un efecto muy feo.

Sabéis alguna forma de arreglarlo???

PD. Los menus ocultos se muestran mediante una función javascript

Salu2
  #2 (permalink)  
Antiguo 04/12/2013, 05:32
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: Separación entre elementos <li>

Pues sino aportas el código CSS poco podremos saber del porqué pasa eso.

Cita:
Iniciado por thenine Ver Mensaje
PD. Los menus ocultos se muestran mediante una función javascript
Esto no hace mucha falta ya que se puede hacer mediante CSS sin mayor problema.
  #3 (permalink)  
Antiguo 05/12/2013, 02:37
 
Fecha de Ingreso: mayo-2007
Mensajes: 44
Antigüedad: 16 años, 11 meses
Puntos: 0
Respuesta: Separación entre elementos <li>

Hola,
gracias por responder pero no entiendo para que necesitas el css.

Código HTML:
.div_subsecc {
    float: left;
    width: 180px;
    padding-left: 10px;
}
.div_subsecc_h 
{
    float: left;
    width: 170px;
    padding-left: 10px;
}
Este es el código CSS.

El primero abarca toda la estructura y el segundo es por cada DIV hijo.


El pulsar sobre cada menu ejecuta en javascript
Código HTML:
var OCULTO="none";
var VISIBLE="block";

...

        subti=document.getElementById("div_subsecc_"+id);
        if (subti!=null)
        {
               if(subti.style.display==VISIBLE)
               {
                subti.style.display=OCULTO;
                texto.style.fontWeight="normal"; 
               }
               else 
                subti.style.display=VISIBLE;              
        } 
Salu2
  #4 (permalink)  
Antiguo 05/12/2013, 07:36
 
Fecha de Ingreso: mayo-2013
Mensajes: 207
Antigüedad: 10 años, 11 meses
Puntos: 31
Respuesta: Separación entre elementos <li>

Cita:
gracias por responder pero no entiendo para que necesitas el css.
Creo que si no entiendes porque es necesario el css tenemos un problema, porque la hoja de estilo ayuda a ver el problema como tu lo ves (a falta de capturas de pantalla) y poder corregirlo.

Luego cuando dices mucha separación, yo no entiendo donde está la separación de la que hablas. Pero puede ser culpa de los valores por defecto que tiene para margin y padding, ¿tienes reseteadas estas propiedades?
  #5 (permalink)  
Antiguo 05/12/2013, 16:08
 
Fecha de Ingreso: noviembre-2013
Mensajes: 78
Antigüedad: 10 años, 5 meses
Puntos: 4
Respuesta: Separación entre elementos <li>

Cita:
Iniciado por alzacon Ver Mensaje
Creo que si no entiendes porque es necesario el css tenemos un problema, porque la hoja de estilo ayuda a ver el problema como tu lo ves (a falta de capturas de pantalla) y poder corregirlo.

Luego cuando dices mucha separación, yo no entiendo donde está la separación de la que hablas. Pero puede ser culpa de los valores por defecto que tiene para margin y padding, ¿tienes reseteadas estas propiedades?
como dice arriba siempre es bueno resetear las medidas de algunos elementos como los a y los ul li

Código CSS:
Ver original
  1. li{
  2. margin:0px;
  3. padding:0px;
  4. }

y acontando un poco lo del css, realmente ahora con css3 se pueden ahcer buenos menus desplegables si usar javascript que enrealidad para este tipo de cosas es un cacho

Última edición por pzin; 08/12/2013 a las 04:08 Razón: formato código
  #6 (permalink)  
Antiguo 06/12/2013, 05:12
Avatar de Linton  
Fecha de Ingreso: diciembre-2011
Ubicación: Viena
Mensajes: 1.213
Antigüedad: 12 años, 4 meses
Puntos: 55
Respuesta: Separación entre elementos <li>

Cita:
Iniciado por thenine Ver Mensaje
Los menus ocultos se muestran mediante una función javascript...
Copio de JavaScript Bible (séptima edición), página 47:
"We should ask JavaScript to perform only those functions that are outside the reach of core browser functionality such as HTML rendering and CSS styling. For example, navigation links should be marked up as functional hyperlinks regardless of whether JavaScript adds any spice to the mix. Multi-level menus, pop-up dialogs, and roll-over image changes can often be implemented using just HTML and CSS, and therefore work for a broader audience".
Los subrayados son míos
  #7 (permalink)  
Antiguo 08/12/2013, 03:13
Avatar de wmdiseno  
Fecha de Ingreso: noviembre-2013
Ubicación: México
Mensajes: 21
Antigüedad: 10 años, 5 meses
Puntos: 1
Respuesta: Separación entre elementos <li>

Tienen razon lo que dicen: pzin, alzacon, Linton.

para checar el problema de la separacion entre elemento es esencial ver el codigo de css, el codigo de css es como tu hoja de estilo, valla! tu forma de reacomodar el menu, si no tienes sentido tendras que checar el manual de css, de desarrollo web y veo que tienes que tener un llamado de div.

intenta con esta explicación

Código HTML:
Ver original
  1. <ul>
  2. div id='nombre del css'>
  3.     <li>Menu 1
  4.  
  5.    
  6.     </li>
  7.     <li>
  8.        <div style="display: none;">
  9.            <ul>
  10.              <li>SubMenu1
  11.              </li>
  12.              <li>SubMenu2
  13.              </li>
  14.              <li>SubMenu3
  15.              </li>
  16.            </ul>
  17.         </div>
  18.     </li>
  19.    <li> Menu 2
  20.    </li>
  21.     <li>
  22.        <div style="display: none;">
  23.            <ul>
  24.              <li>SubMenu1
  25.              </li>
  26.              <li>SubMenu2
  27.              </li>
  28.              <li>SubMenu3
  29.              </li>
  30.            </ul>
  31.         </div>
  32.     </li>
  33.  
  34. .......
  35. </ul>
y de estilo css
intenta algo asi:


Código CSS:
Ver original
  1. @charset 'UTF-8';
  2. /* Some stylesheet reset */
  3. #aqui pone el nombre que se relaciona donde te puse ''nombre css" > ul {
  4.  list-style: none;
  5.  margin: 0;
  6.  padding: 0;
  7.  vertical-align: baseline;
  8.  line-height: 1;

con mismo div y mismo css, debe de funcionar (:

saludos!

Última edición por pzin; 08/12/2013 a las 04:09 Razón: formato código

Etiquetas: html, listas
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:48.