Есть код:
body {
font-family:"Aquarelle";
padding: 1cm;
margin: 0px;
}
table
{
border-collapse: collapse;
border: 1px solid black;
width: 100%;
height: 100%;
}
table td {
font-size: 70pt;
padding: 0 7%;
min-width: 29cm;
max-width: 21cm;
}
<body bgcolor="white" lang="RU">
<div class="Section1">
<table>
<tr>
<td align="center" valign="middle">Самой красивой, умной, нежной, любимой маме! </td>
</tr>
</table>
</div>
</body>
Нужно сделать так, что при увеличении кол-ва символов в тексте, таблица не росла по высоте (оставалась фиксированной min-width: 29cm; max-width: 21cm), а наоборот уменьшался шрифт, при этом его размер был максимально возможным, при выделенных ему границах (отступы 7% слева и справа).
реально ли на чистом css? если нет то уже вариант на js.
Везде нахожу прмеры, где по размер экрана всё затачивается.
Вот прям чтобы не вылезало за пределы height, насколько мне известно, только css мало. Благо на JS библиотек предостаточно.
Однако, есть еще интересный вариант с svg, правда надо поиграть с координатами и viewBox (попробуйте viewport браузера подергать в примере)
Клац
<svg viewBox="0 0 56 18">
<text x="0" y="15">Fit Me</text>
</svg>
Источник: csstricks
Сборка персонального компьютера от Artline: умный выбор для современных пользователей