using clientRect bounds rather than width/height