Workaround for Chrome's bug in Range.getClientRects which results in selections spanning multiple nodes returning rects for the all the parents of the endContainer.
See https://code.google.com/p/chromium/issues/detail?id=324437
https://rawgit.com/edg2s/range-get-client-rects/master/demo.html