У меня есть таблица дивы с помощью display: column; width: 100px;
Ширина столбца не работает должным образом с использованием дисплея: стол-столбец; и пустое пространство: nowrap;
Клетки используют display: table-cell; white-space: nowrap; overflow: hidden;
, потому что я всегда хочу, чтобы данные, чтобы быть на той же строке, и если он слишком долго она должна быть обрезана.
Адрес jsfiddle.
<div class="table">
<div class="column1" style="display:table-column;width:50px;overflow:hidden;"></div>
<div class="column2" style="display:table-column;width:50px;overflow:hidden;"></div>
<div class="column3" style="display:table-column;width:200px;overflow:hidden;"></div>
<div class="column4" style="display:table-column;width:50px;overflow:hidden;"></div>
<div class="row">
<div class="cell"><span>a sdf</span></div>
<div class="cell"><span>as dlfk jas dofj </span></div>
<div class="cell"><span>as klödfjasdfj asöldfjk as</span></div>
<div class="cell"><span>a sdf</span></div>
</div>
<div class="row">
<div class="cell"><span>a sdf</span></div>
<div class="cell"><span>as dlfk jas dofj </span></div>
<div class="cell"><span>as klödfjasdfj asöldfjk </span></div>
<div class="cell"><span>a sdf</span></div>
</div>
<div class="row">
<div class="cell"><span>a sdf</span></div>
<div class="cell"><span>as dlfk jas dofj </span></div>
<div class="cell"><span>kludd as klödfjasdfj asöldfjkaskj fhalksfh alskdfhak dfhaslkfhasldfh asklh aslkdfh asklfh</span></div><!-- Add this to the cell: style="max-width:0px;"-->
<div class="cell"><span>a sdf</span></div>
</div>
<div class="row">
<div class="cell"><span>a sdf</span></div>
<div class="cell"><span>as dlfk jas dofj </span></div>
<div class="cell"><span>as klödfjasdfj asöldfjk </span></div>
<div class="cell"><span>a sdf</span></div>
</div>
<div>
.table{
display:table;
table-layout:fixed;
border:1px solid;
}
.row{
display:table-row;
}
.cell{
display:table-cell;
border-right:1px solid;
white-space:nowrap;
overflow:hidden;
}
.cell:last-of-type{
border:0;
}
.cell span{
text-overflow:ellipsis;
}
Таблица действует как должно, пока данные не будут длиннее 200 пикселей. Я мог бы решить эту проблему, установив max-width: 200px;
на ячейку. Однако ширина является динамическим значением с сервера, и я не хочу отображать эти ненужные данные для каждой ячейки атрибута style.
Можно ли написать мои столбцы, чтобы решить эту проблему?
Еще одна странная вещь, Если я установил max-width: 0px;
в атрибуте стиля в ячейке с очень длинными данными, он отображает 200px! Может ли кто-нибудь объяснить это?
Это будет работать для этого упрощенного примера, но ширина устанавливается сервером. Возможно, я мог бы сделать это с сервера, но это будет очень сложно, поскольку на странице может быть несколько таблиц с разной шириной. –
Я имею в виду, что вы должны установить max-width и scoll, как в приведенном выше примере, или вы можете изменить размер столбцов, чтобы вы могли перетаскивать их, чтобы расширить их. –
Ага, но мне не нужны свитки. Если содержимое ячеек слишком велико. Я хочу, чтобы он был спрятан. –