Чтобы проверить наличие перекрывающихся элементов div, вы можете выполнить проверку после загрузки страницы и при изменении размера окна:
window.onload = checkOverlap;
window.onresize = checkOverlap;
А затем используйте некоторую проверку смещения:
function checkOverlap() {
var centerBox = document.getElementById('centerDiv');
var rightBox = document.getElementById('rightDiv');
console.log("centerbox offset left: " + centerBox.offsetLeft);
console.log("centerbox width: " + centerBox.offsetWidth);
console.log("rightbox offset left: " + rightBox.offsetLeft);
if ((centerBox.offsetLeft + centerBox.offsetWidth) >= rightBox.offsetLeft) {
centerBox.style.display = "inline-block";
} else {
centerBox.style.display = "block";
}
}
Возможно, вы захотите сделать еще несколько проверок в функции, например, чтобы увидеть, если окно уже отображается в строке, и тому подобное. Но это должно дать вам хорошее место для начала.
edit: добавлена некоторая диагностика и исправлена ошибка