Так вот как работает метод переполнения текста.Должна быть определенная ширина его родителя или ближайшего родителя.Вам нужно будет определить ширину для вашей ячейки, например:
&:last-child {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
width: 85%;
text-align: right;
}
Но вам также придется ограничить вашу таблицу, так как таблица естественным образом пытается расширить столько, сколько требует содержимое в своем дочернем элементе, используяtable-layout
:
.table {
display: table;
padding: 0.25rem;
table-layout: fixed;
width: 100%;
}
. Правый столбец создаст многоточие, когда ячейка достигнет 85% доступной ширины.Проблема, с которой вы столкнетесь, связана с левым столбцом, потому что у вас также установлен no-wrap
, чтобы столбец мог на самом деле превышать 15% ширины и перекрываться с правым.Проблема заключается в том, что ваша колонка пытается не переносить и борется за табличное пространство, вам нужно применить ту же технику text-overflow
в левой колонке.Смотрите предыдущий и последний пример здесь:
https://jsfiddle.net/bhL6sx0g/
Если честно, если вы имеете дело со многими столбцами с динамическим содержимым, которые вы не хотите переносить, вы можете захотетьчтобы добавить слой JS сверху, чтобы сделать некоторые размеры для вас, в противном случае лучше всего делегировать фактическую ширину, такую как разделение 15/85, и придерживаться ее.