169 похожих чатов

Фронтендерское сообщество, я вызываю тебя, Такой странный кейс. Есть блок с

текстом в несколько строк внутри дива с дисплей флекс. Блок искривлен через transform: skewY(-15deg). Из-за того, что текста много, то блок сначала пытается занять всю ширину своего контейнера, а потом уже переносит текст. Таким образом - блок на всю ширину родителя, а текст - как поместится. Так же блок с текстом центрируется по вертикали за счет align-items: center и по горизонтали через justify-content: center у родителя. И если смотреть по границам именно блока - то центрируется верно (картинка 1), но если смотреть по границам текста - само собой текст смещен относительно центра по вертикали (картинка 2), на третьей картинке убрал серый фон чтобы было наглядней в чем проблема (финальная версия должна быть без фона).
Насколько я знаю, это совершенно обычное поведение текста в браузере, и я бы не стал над этим заморачиваться, но клиент просит попробовать пофиксить. И вот я думаю, какие есть идеи?

16 ответов

14 просмотров

ты можешь размер текста привязать к vmin vmax

тут даже через жопу если делать, не получится

Pavel-Arsieiev Автор вопроса
Сергей Дёмин
ты можешь размер текста привязать к vmin vmax

не могу...это вы скорее про адаптивность текста...а мне про выровнять текст не по границам блока, а по границам текста, при том, что границы блока вообще-то правильно отображаются)

Pavel-Arsieiev Автор вопроса
Сергей Дёмин
тут даже через жопу если делать, не получится

вот я уже все ближе к этому же ответу :) Подумал, может тут есть кто-то достаточно хитрый, чтобы выдать мне костыль какой-нибудь :)

Pavel Arsieiev
вот я уже все ближе к этому же ответу :) Подумал, ...

установи размер текста в em (наследуются от родителя) родителю установи размер текста в пикселях который уже будешь как-то высчитывать

Pavel-Arsieiev Автор вопроса
Сергей Дёмин
установи размер текста в em (наследуются от родите...

и как это поменяет процесс рендера текста? :)

Pavel-Arsieiev Автор вопроса
Сергей Дёмин
но без моноширного шрифта это будет сложно

мне нужно не подогнать текст под размеры контейнера, мне нужно уменьшить размер блока с текстом непосредственно до размеров текста, который оный имеет в своем естественном состоянии)) в этом и сложность :)

Pavel Arsieiev
мне нужно не подогнать текст под размеры контейнер...

попробуй текст указать в СВГ и его расстянуть как картинку

Pavel-Arsieiev Автор вопроса
Сергей Дёмин
попробуй текст указать в СВГ и его расстянуть как ...

в свг текст не будет переноситься построчно, он будет скейлиться, чтобы влезть в то количество строк, которое в разметке было изначально)

Pavel Arsieiev
в свг текст не будет переноситься построчно, он бу...

ну так ты можешь высчитать сколько символов помещается в строку, разбить на переносы текст согласно количеству символов (по словам) и растянуть свг

Pavel-Arsieiev Автор вопроса

мне нельзя как-либо менять внешний вид текста :) Он должен выглядеть так, как выглядит, но выравниваться по законам, придуманным клиентом :)

Pavel Arsieiev
мне нельзя как-либо менять внешний вид текста :) О...

Тогда вам нужно вычислять длину первой строки и поперчить это все геометрическими формулами

Pavel-Arsieiev Автор вопроса
Ростислав
Тогда вам нужно вычислять длину первой строки и по...

тоже не годится...первая строка, например, может быть длинее второй, или короче )

Pavel-Arsieiev Автор вопроса
Ростислав
Хм, тогда советую вариант с проституткой

😄я пока оставлю это как вариант на потом)

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта