document.body.onload = cols(); function cols() { var col = new Array(); var cont = document.getElementById('img_list'); if(!cont) return; var n = Math.floor((cont.offsetWidth - 8) / 244); var h = new Array(n); for(var i = 0; i < n; i++) { cont.appendChild(col[i] = document.createElement('div')); h[i] = 0; } var shortest = 0; var imgcont = document.getElementById('img_bin'); var el; while (el = imgcont.childNodes[0]) { h[shortest] += Number(el.childNodes[0].getAttribute('height')); col[shortest].appendChild(el); for(var j = 0; j < n; j++) if(h[j] < h[shortest]) shortest = j; } }