I also solved this problem. The div position must be set absolute, and the position of the 'display' div is also counted using javascript.
Here is my updated solution. I also simplified the code using gaurang's solution:
function countdown(element, minutes, seconds) {
...
var eld = document.getElementById('display');
var eldp = getElementPosition(eld);
if(time == 10){
el.style.top = eldp.top+'px';
el.style.left = eldp.left+'px';
el.style.position = 'absolute';
} else if (time == 5){
el.style.display='none';
}
...
function getElementPosition(Elem) {
var offsetLeft = 0, offsetTop = 0;
do {
if ( !isNaN( Elem.offsetLeft ) ) {
offsetLeft += Elem.offsetLeft;
offsetTop += Elem.offsetTop;
}
} while( Elem = Elem.offsetParent );
return {top: offsetTop, left: offsetLeft };
}
The measuring of element position is taken from here.