size and position styles determined programatically