Foros del Web » Programando para Internet » Javascript »

Centrar contenido luego de que un div crezca con overflow-x:auto;

Estas en el tema de Centrar contenido luego de que un div crezca con overflow-x:auto; en el foro de Javascript en Foros del Web. -- Hola. El script que estoy desarrollando consiste en crear imagenes que se suman a un div, cuando la cantidad de imagenes sobrepasan el tamaño ...
  #1 (permalink)  
Antiguo 11/07/2011, 16:41
Avatar de GendeDios  
Fecha de Ingreso: mayo-2007
Ubicación: Paraiso de America
Mensajes: 135
Antigüedad: 17 años
Puntos: 10
Centrar contenido luego de que un div crezca con overflow-x:auto;

--
Hola.

El script que estoy desarrollando consiste en crear imagenes que se suman a un div, cuando la cantidad de imagenes sobrepasan el tamaño del div este dispara su scroll horizontal y el div crece.

Son 2 lineas de images horizontales y deben estar centradas en el div luego de que crezca, pero cuando una linea es lo suficientemente larga para ampliar el div y la otra linea es muy corta esta ultima no queda centrada en el total del div ampliado sino que se centra unicamente en el campo visible del div.

Aquí está el script: http://bit.ly/mxbMIn

Como podemos ver he aplicado:
Luego que se agregan las imagenes:

Código Javascript:
Ver original
  1. //Al div que crece.
  2.                 div2.style.textAlign="center";
  3.  
  4. //A los dos divs donde las imagenes se ubican que están dentro de div2
  5.                 document.getElementById('firstrow').style.margin="auto";
  6.                 document.getElementById('secondrow').style.margin="auto";

Pero no funciona.

Para hacer la prueba seleccionar 2 filias, digitar 10 letras en la primera fila y 1 en la segunda, vemos que la segunda fila no se centra con respecto a la primera.

Un millón de gracias.

Saludos.
--
  #2 (permalink)  
Antiguo 11/07/2011, 21:54
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: Centrar contenido luego de que un div crezca con overflow-x:auto;

Podrías probar algo así:
Código PHP:
var ancho=Math.max(document.getElementById('firstrow').offsetWidth,document.getElementById('secondrow').offsetWidth);
document.getElementById('firstrow').style.width=document.getElementById('secondrow').style.width=ancho+'px'
  #3 (permalink)  
Antiguo 12/07/2011, 12:54
Avatar de GendeDios  
Fecha de Ingreso: mayo-2007
Ubicación: Paraiso de America
Mensajes: 135
Antigüedad: 17 años
Puntos: 10
Respuesta: Centrar contenido luego de que un div crezca con overflow-x:auto;

--
La lógica que propones es absolutamente asertada.

Vamos a cambiar
Código Javascript:
Ver original
  1. .offsetWidth
por
Código Javascript:
Ver original
  1. .scrollWidth
ya que el div crece contenido bajo una caja que adopta un overflow:auto disparando así el scroll.
Así efectivamente toma el width del div que crece, de otra forma este valor permanece constante.

Toda tuya hermano, has arreglado prácticamente toda mi situación aquí. Gracias.
--

Etiquetas: overflow, scroll
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:27.