Вы могли бы быть лучше обслужены при помощи платформы JavaScript, которая имеет функции для возврата такой информации (и настолько больше!) способом браузера-independant. Вот некоторые:
С этими платформами, Вы могли сделать что-то как: $('id-of-img').top
для получения y-пиксельной координаты изображения.
Если я правильно помню, есть ошибка в том, как IE6 обрабатывает высоту div. Он только создаст div с высотой, необходимой для содержания внутри него, когда высота установлена на 100%. Я бы порекомендовал два подхода:
Этого можно добиться, установив атрибуты ребенка как верхний, так и нижний.
Внизу статьи есть ссылка на Дина Библиотека js для IE7 (и IE8) Эдвардса, которую вы должны включить для посетителей IE6. Это JS-библиотека, которая ДЕЛАЕТ IE6 вести себя как IE7 (или 8), когда вы ее включаете. Sweet!
Насколько я знаю, нет никакого способа расширить родительский элемент вокруг абсолютно расположенного дочернего элемента. Сделав дочерний элемент абсолютно позиционированным, вы удаляете его из регулярного потока элементов страницы.
Я недавно построил 2-колоночный сайт, где правая колонка была абсолютно позиционирована, а левая - нет. Если бы левая колонка имела меньшее содержание и меньшую высоту, чем правая, страница отсекала бы правую колонку, так как она была абсолютно позиционирована.
Чтобы решить эту проблему, я должен был определить, была ли высота правого столбца больше высоты левого, и если да, то установить высоту родительского дива больше высоты двух столбцов.
Вот мое решение jQuery. Я не очень разбираюсь в кодере, так что не стесняйтесь подкорректировать:
jQuery(function(){
var rightColHeight = jQuery('div.right_column').height();
var leftColHeight = jQuery('div.left_column').height();
if (rightColHeight > leftColHeight){
jQuery('.content_wrap').height(rightColHeight+'px');
}
});