Moved the canvas HTML so that first child still selects the first block. Added some mouse and scroll events to update the canvas. Haven't got native resize events to work yet