Я пытаюсь заставить текстовый многоточие работать в макете гибкого столбца, внутри гибкой строки.Вариант использования будет для чего-то вроде вкладок со значками - все вкладки должны помещаться в строке и, возможно, быть усеченными, а вкладки имеют внутреннее расположение столбцов, поэтому значок располагается над текстом.
ЭтоМожно заставить работать корректно размеры, но я не могу найти способ заставить усечение работать, сохраняя гибкость по горизонтали.
Я создал этот plunkr , чтобы продемонстрировать -как вы можете видеть в обоих вариантах, растяжение работает правильно, а упаковщики строк / столбцов сокращаются, чтобы соответствовать контейнеру, но многоточие текста перестает работать, как только вы переключаете оболочку на столбец.
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<style>
.wrapper {
display: flex;
align-items: stretch;
justify-content: center;
padding: 16px;
width: 100%;
max-width: 250px;
}
.column-wrapper {
display: flex;
flex-direction: column;
flex: 1 1 100px;
align-items: center;
justify-content: center;
width: 100%;
min-width: 0;
}
.row-wrapper {
display: flex;
flex-direction: row;
flex: 1 1 auto;
align-items: center;
justify-content: center;
width: 100%;
min-width: 0;
}
.ellipsis {
display: block;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap
}
</style>
<div class="wrapper">
<div class="column-wrapper">
<p class="ellipsis">This is some very long text</p>
</div>
<div class="column-wrapper">
<p class="ellipsis">This is some very long text</p>
</div>
</div>
<div class="wrapper">
<div class="row-wrapper">
<p class="ellipsis">This is some very long text</p>
</div>
<div class="row-wrapper">
<p class="ellipsis">This is some very long text</p>
</div>
</div>
</body>
</html>
Желаемый результат заключается в том, что внутренний столбец усекается так же, как и внутренний ряд.Очевидно, это все еще должен быть столбец для поддержки значков и т. Д.
К вашему сведению, это основная проблема для https://github.com/ionic-team/ionic/issues/16532
К вашему сведению2, это можно получить, используя display: block вместо display: flex для оболочек столбцов, но это не будет поддерживать другие необходимые сценарии использования для этих контейнеров.