Foros del Web » Creando para Internet » CSS »

Problema con JQuery y márgenes..

Estas en el tema de Problema con JQuery y márgenes.. en el foro de CSS en Foros del Web. Buenas tardes, estoy usando un efeco show de jquery, y me sucede lo siguiente.. tengo un div centrado vertical y horizontal a la pagina: @import ...
  #1 (permalink)  
Antiguo 16/10/2010, 15:37
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Exclamación Problema con JQuery y márgenes..

Buenas tardes,
estoy usando un efeco show de jquery, y me sucede lo siguiente..

tengo un div centrado vertical y horizontal a la pagina:
Código CSS:
Ver original
  1. #content{
  2.     position:absolute; 
  3.     width:1000px;
  4.     height:600px;
  5.     background-color:#09F;
  6.     margin:0 auto;
  7.     border:#FFF solid 2px;
  8.     margin-left:-500px;
  9.     margin-top:-300px;
  10.     top:50%;
  11.     left:50%;
  12. }

lo que sucede que el JQuery no me reconoce ambos márgenes negativos y hace el efecto "300 pixeles" a la derecha y 300 mas abajo, quedando pésimo..
si le saco ambos márgenes obviamente el div no queda centrado y el efecto lo hace correctamente..

habrá alguna solución para ésto?

gracias!
Saludos.


PD: nose si postearlo en Javascript o CSS, nose como se podrá solucionar el problema, si es mas para JS que para CSS lo mueven.. gracias

PD2: dejo una imagen ilustrativa de lo que sucede..


Última edición por McBlink; 16/10/2010 a las 15:45
  #2 (permalink)  
Antiguo 16/10/2010, 23:47
Avatar de cristian_cena
Colaborador
 
Fecha de Ingreso: junio-2009
Mensajes: 2.244
Antigüedad: 14 años, 10 meses
Puntos: 269
Respuesta: Problema con JQuery y márgenes..

Hola McBlink, por un lado dices y muestras que tienes 2 divs y por otro solo muestras el código css de uno de ellos.

En el codigo css que muestras estas utilizando la propiedad margin, la cual no altera el comportamiento del div cuya id es "content" ya que este tiene asignado position:absolute;

Lo indicado en este caso es que borres la propiedad margin y trabajes en su lugar con top:; left:; right:; o bototm:;
(A propósito veo que en la línea 10 tienes mal tipeado el código.)

position:absolute asignado a un elemento, hace que este se posicione en relación al inicio de coordenadas 0 0 (esquina superior izquierda) de su primer ancestro posicionado con position:relative; o bien, si no encuentra ancestro relativo entonces toma como punto de referencia la esquina sup-izq de <body>.

Por lo tanto, te sugiero que des position:relative; al div negro (ancestro relativo) y des ...:
position:absolute;
top:/*cuanto quieras*/;
left:"cuanto necesites";
... al div rojo (hijo absoluto). De este modo conseguirás controlar con exactitud la posición de tu caja absoluta.

Espero te sea útil esta respuesta, si no ya sabes, postea completa tu pregunta y lo vemos. Un saludo.

Etiquetas: jquery
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 21:08.