Range.getBoundingClientRect () против element.getBoundingClientRect () для того же элемента? - PullRequest
0 голосов
/ 24 марта 2020

Существует разница между element.getBoundingClientRect () и range.getBoundingClientRect (), когда диапазон относится к одному и тому же элементу. Если вы откроете эту страницу и выполните следующее:

var el = document.querySelector('#react-container > main > div.titlebar-container > div > 
h1');

console.log(el.getBoundingClientRect());
$ DOMRect {x: 156.5, y: 95.5, width: 1352, height: 51, top: 95.5, …}

var range = document.createRange();
range.selectNodeContents(el);
console.log(range.getBoundingClientRect());
$ DOMRect {x: 156.5, y: 90.5, width: 763.828125, height: 61, top: 90.5, …}

, вы получите разные ставки. Мой вопрос: почему это происходит, и какой прямоугольник является более точным?

...