Je vais répondre pour l'étirement horizontal du texte, puisque le vertical est la partie facile - il suffit d'utiliser "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>
espacement des lettres ajoute juste de l'espace entre les lettres, n'étire rien, mais c'est plutôt relatif.
inline-block car les éléments en ligne sont trop restrictifs et le code ci-dessous ne fonctionnerait pas autrement.
Maintenant, la combinaison qui fait la différence
taille de la police pour obtenir la taille souhaitée - de cette façon, le texte aura vraiment la longueur qu'il est censé avoir et le texte qui le précède et celui qui le suit apparaîtront à côté de lui (scaleX est juste pour l'affichage, le navigateur voit toujours l'élément à sa taille d'origine lorsqu'il positionne d'autres éléments).
scaleY pour réduire la hauteur du texte, de manière à ce qu'il soit identique à celui qui se trouve à côté.
transform-origin pour que le texte soit mis à l'échelle à partir du haut de la ligne.
marge inférieure défini à une valeur négative, afin que la ligne suivante ne soit pas bien en dessous - de préférence en pourcentage, afin que nous ne changions pas la propriété line-height. alignement vertical défini en haut, pour empêcher le texte avant ou après de flotter à d'autres hauteurs (puisque le texte étiré a une taille réelle de 32px)
-- L'élément span simple possède une taille de police, uniquement à titre de référence.
La question demandait un moyen d'empêcher l'audace du texte causée par l'étirement et je n'en ai toujours pas donné un, MAIS l'option font-weight a plus de valeurs que la simple propriété normal et en gras .
Je sais, tu ne peux pas voir ça, mais si tu cherches le bon polices vous pouvez utiliser les autres valeurs.
0 votes
C'est pour l'horizontale, non ? Et pour la verticale ?
1 votes
A quoi cela vous sert-il ? Pour quelques lignes de texte seulement ? Êtes-vous prêt à utiliser JavaScript ?