Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: Sancho.Mazorka en 31 Marzo 2011, 21:29 pm



Título: [Solucionado] Problema con div y alineación
Publicado por: Sancho.Mazorka en 31 Marzo 2011, 21:29 pm
Hola, qué tal?

Estoy haciendo una web en javascript, y estoy maquetando con divs. Como hay información que tal véz el usuario no desea ver, incluí una función que oculte el div al clickearlo, y que lo muestre de vuelta al clickear otra vez la barra. El problema está en que cuando vuelvo a mostrar el div, la información de adentro pierde la alineacion y se va todo para la izquierda.

Código
  1. <div id="game_div" class="yellowline" onclick="muestra_oculta(this.id);"> <!-- BARRA CON TITULO QUE OCULTA EL CONTENEDOR -->
  2.    <div style="display: table; margin-left: auto; margin-right: auto;">
  3.        <div id="game_div_icon" class="left"><img id="game_div_icon_img" src="file:///C|/red_less.png" width="16" height="16" align="bottom" /></div>
  4.        <div id="game_div_text" class="right">&nbsp;Call of Duty: Modern Warfare 2 Multiplayer</div>
  5.    </div>
  6. </div>
  7.  
  8. <div id="game_div_container"> <!-- DIV CONTENEDOR -->
  9.    <div id="mapPreview">
  10.        <div id="preview_div">
  11.            <img src="img/nomap-en.png" alt="desconocido" name="mapname" width="240" height="135" longdesc="mapa desconocido" />
  12.        </div>
  13.        <div id="mapinfo_div"></div>
  14.    </div>
  15.  
  16.    <div id="info_bar"></div>
  17.  
  18.    <div id="jugadores"><h2>Datos aca!</h2></div>
  19.    <div id="status2" align="center" style="padding-top:5px"></div>
  20. </div>

Código
  1. function muestra_oculta(id){
  2.    if (document.getElementById){
  3.        var el = document.getElementById(id + "_container"); //se define la variable "el" igual a nuestro div
  4.        if (el.style.display == 'none'){
  5.    el.style.display = 'table';
  6.        }
  7.        else{
  8.            el.style.display = 'none';
  9. }
  10.    }
  11. }

Código
  1. #preview_div{
  2. text-align:center;
  3. position:relative;
  4. overflow:hidden;
  5. margin-top:5px;
  6. margin-bottom:2px;
  7. }
  8.  
  9. #mapinfo_div{
  10. color:#660000;
  11. text-align:center;
  12. font:Tahoma;
  13. font-weight:bold;
  14. font-size:12px;
  15. }
  16.  
  17. #info_bar{
  18. text-align:center;
  19. font:Tahoma;
  20. font-weight:bold;
  21. font-size:12px;
  22. }
  23.  
  24. #mapPreview{
  25. height:160px;
  26. }

Los DIVs que están vacios, se llenan automaticamente con información mediante AJAX. Acá no tiene relevancia eso, por ese motivo, omití el codigo.

Ahí está todo lo relacionado: HTML + JS + CSS.

Espero puedan ayudarme, muchas gracias desde ya.


Saludos, Sancho.Mazorka!    :¬¬


Título: Re: [Solucionado] Problema con div y alineación
Publicado por: Sancho.Mazorka en 31 Marzo 2011, 21:51 pm
2 días peleando con ésto, abro un thread para ver si alguién me puede ayudar...y encuentro la solución yo solo.

Código
  1. <div id="game_div_container" style="width: 100%"> <!-- DIV CONTENEDOR -->

Solo había que forzar el ancho del div.


Saludos, Sancho.Mazorka    :¬¬