Чтобы исправить некорректно отображаемые (в ie7) элементы div, которые исправляются после наведения на что-то другое, отключения мыши или любого другого странного события, используйте следующий jQuery:
if ($("html").hasClass("ie7")){
var tempHolder = $("#ajaxresults").html();
$("#ajaxresults").html(tempHolder);
}
Логика довольно проста, и я думаю, вы могли бы сделать это так же легко с помощью JavaScript "innerHTML". Просто перепишите html-содержимое div, которое ведет себя неправильно, и это заставит его пересчитать стили.
Что касается присвоения тегу html или body класса ie7, я рекомендую взглянуть на html5boilerplate.com. Если по какой-то причине вы не можете использовать их решение, jquery для этого:
if ($.browser.msie){
if ($.browser.version < 8){
$("html").addClass("ie ie7");
}
else {
$("html").addClass("ie");
}
}