2012-04-06 3 views
1

Я использую jQuery .animate() для перемещения контейнера с абсолютным расположением. FF, IE и Opera перемещают контейнер правильно вверх. С Chrome контейнер прыгает вверх и перемещается на 200px с поля.jQuery .animate() перескакивает в Chrome

JQuery:

$("#indexbox").animate({top: "0", marginTop: "0"}, 500); 

CSS:

#indexbox { 
position: absolute; 
width: 500px; 
left: 50%; 
top: 50%; 
margin-left: -250px; 
margin-top: -200px; 
} 

Может кто-нибудь помочь?

+1

Решена проблема с этим изменением '$ ("# IndexBox") анимировать ({верх:. "0%", MarginTop: «0»}, 500); ' –

ответ

0

Если вы хотите, чтобы элемент появился снизу и двигался вверх, вы не должны устанавливать отрицательный верхний край. По моему личному мнению, Chrome - это единственный браузер с «логическим» рендерингом вашего кода.

Я сделал здесь пример, который делает то, что я думаю, что вы хотите: http://jsfiddle.net/QLBvh/1/

+1

Работает также. Благодаря! Но я решил проблему уже с добавлением% к верхней анимации. –

+0

Да, не видел, пока я не отправил свой ответ :) Спасибо, что принял этот ответ в любом случае! – playeren

+0

вместо верхнего, используйте '{" padding-top ":" + = 15px "}' как относительный –