Я відповім за горизонтальне розтягнення тексту, оскільки вертикаль - це легка частина - просто використовуйте "transform: scaleY ()"
.stretched-text {
letter-spacing: 2px;
display: inline-block;
font-size: 32px;
transform: scaleY(0.5);
transform-origin: 0 0;
margin-bottom: -50%;
}
span {
font-size: 16px;
vertical-align: top;
}
<span class="stretched-text">this is some stretched text</span>
<span>and this is some random<br />triple line <br />not stretched text</span>
інтервал між літерами просто додає простір між літерами, нічого не розтягує, але це свого роду відносно
inline-block, тому що вбудовані елементи є занадто обмежуючими, а код нижче не працює
Тепер комбінація, яка має значення
розмір шрифту, щоб досягти потрібного нам розміру - таким чином текст буде дійсно такою, якою він повинен бути, а текст до і після того, як він з’явиться поруч (scaleX - це лише для показу, браузер все ще бачить елемент у вихідному розмірі при розташуванні інших елементів).
scaleY, щоб зменшити висоту тексту, щоб він був таким самим, як текст поруч.
transform-origin, щоб зробити масштаб тексту зверху рядка.
граничне нижнє значення встановлюється на від'ємне значення, так що наступний рядок не буде далеко нижче - бажано відсотків, так що ми не будемо змінювати властивість висоти рядка.
вертикальне вирівнювання встановлено вгорі, щоб запобігти плаванню тексту до чи після нього на інші висоти (оскільки розтягнутий текст має реальний розмір 32 пікселів)
- Простий прольотний елемент має розмір шрифту, лише як еталон.
У запитанні було запропоновано спосіб запобігти сміливості тексту, викликаному розтяжкою, і я все ще не дав жодного, АЛЕ властивість шрифту має більше значень, ніж просто нормальне та жирне .
Я знаю, ви просто не бачите цього, але якщо шукати відповідні шрифти , ви можете використовувати більше значень.