Этот подход не идеален по пикселям, но он будет иметь приблизительный результат.
Обтекание текста, например <span>
, позволяет получить начальную ширину текста и размер шрифта, который будет использоваться для рассчитайте окончательный размер шрифта, используя также ширину контейнера.
window.addEventListener('resize', calcFontSize);
var textEl = document.querySelector('span'),
textElParent = textEl.parentNode,
textFontSize = parseFloat(window.getComputedStyle(textEl, null).getPropertyValue('font-size')),
textWidth = textEl.clientWidth,
spaceToFill;
function calcFontSize() {
spaceToFill = textElParent.clientWidth;
textEl.style.fontSize = (spaceToFill * textFontSize)/textWidth + "px";
}
calcFontSize();
html {
background-color: #fff;
}
body {
background-color: #f3f3f3;
display: flex;
text-align: center;
justify-content: center;
margin: 0 8%;
}
<body>
<span>hello</span>
</body>