Расчетный размер шрифта возвращается меньше, чем высота divJavascript

Форум по Javascript
Ответить
Anonymous
 Расчетный размер шрифта возвращается меньше, чем высота div

Сообщение Anonymous »

Я пытаюсь поместить немного длинного текста в Div, и я использую следующую функцию JavaScript для расчета требуемого размера шрифта. Контейнер - это фактический Div, который будет отображаться, а измерение - временный Div, который взял все свойства контейнера, так что одинаковые поля, заполнение и т. Д.

Код: Выделить всё

    const measurer = document.createElement("div");
const containerStyles = getComputedStyle(container);

for (let prop of containerStyles) {
measurer.style[prop] = containerStyles.getPropertyValue(prop);
}

measurer.style.display = "hidden";
measurer.style.position = "absolute";
measurer.style.height = "auto";
measurer.innerHTML = text;
document.body.appendChild(measurer);

while (measurer.offsetHeight == 0 || measurer.offsetHeight >= container.offsetHeight) {
measurer.style.fontSize = (fontSize--) + "px";
measurer.innerHTML = "";
measurer.innerHTML = text;
}

document.body.removeChild(measurer);
Тем не менее, Measurer возвращает меньший размер шрифта, но правильная высота div.
Нерегулярность, когда страница загружается, она отображает этот меньший шрифт. Но выполнение мягкой перезагрузки (CTRL-R) отображает шрифт правильного размера, идеально подходящий в Div. Выполнение жесткой перезагрузки (Ctrl-Shift-R) снова перезагружает меньший шрифт.
Что может вызвать это странное поведение?

Подробнее здесь: https://stackoverflow.com/questions/797 ... div-height
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»