У меня есть два элемента div , которые являются близнецами (то есть их размеры и содержимое идентичны). Я хочу переместить эти div-ы поверх другого, чтобы их углы были точно такими же координатами. То, что я пытаюсь сделать, это:
var offset = $('div#placeholder').offset();
$('div#overlay').css('position', 'absolute').css('left', offset.left + 'px').css('top', offset.top + 'px')
- но это приводит к тому, что наложение будет точно (или почти точно, принимая во внимание точность субпикселей) на 16 пикселей ниже заполнителя (ниже, то есть overlay_top = placeholder_top + 16px).
Мне известно, что offset () задает положение относительно документа, а position: absolute устанавливает положение относительно body элемента, но компенсирует смещение тела () мало помогает (я получаю смещение в 8 пикселей, равное полям):
offset.top -= $('body').offset().top;
offset.left -= $('body').offset().left;
Также, компенсация полей body (в случае, если они отличались от offset () , не помогли, так как они были установлены на 8px).
Кто-нибудь знает, что я здесь не так делаю?
ОБНОВЛЕНИЕ: Взгляните на здесь - я получаю тот же результат в FireFox 3.6.3 и Opera 10.10.