#html
Вопрос:
У меня очень длинный текст в теге p, этот текст содержит много сносок.
как я могу определить смещение y этих тегов sup, я хочу отобразить сноски слева от текста.
<p>Wir Herman von <bold>Wachtendungk,<sup>2</sup></bold> von Gots gnaden Abt des Gotshuiss und herre zu Sieberg, <bold>vort<sup>3</sup></bold> gantz gemein Convent ordens sanct Benedicti, inn dem <bold>gestichte<sup>4</sup></bold> vonn Collenn gelegenn, Thun sementlichenn khundt allenn luiden unnd bekennen ...</p>
Ответ №1:
Если вам нужно смещение относительно страницы, вы можете попробовать что-то вроде
const elements = document.getElementsByTagName('sup');
Array.from(elements).forEach(element => {
const clientRect = element.getBoundingClientRect();
const clientX = clientRect.left;
console.log(clientX); // this is your offset
});
Если вам нужно смещение относительно заключающего элемента <p>
// select your p here
const p = document.getElementById(...);
const bounds = p.getBoundingClientRect();
const pOffset = bounds.left;
const elements = document.getElementsByTagName(sup);
Array.from(elements).forEach(element => {
const clientRect = element.getBoundingClientRect();
const clientX = clientRect.left;
console.log(clientX - pOffset); // this is your offset
})
Комментарии:
1. спасибо, это действительно здорово. спасибо, отлично работает!