Я использую классы Materialise, чтобы создать для пользователя "заполнитель фотографий", который содержит первую букву его имени.
У меня проблемы с длинными именами внутри тега <td>
.Я не хочу, чтобы название ломалось, когда оно слишком длинное.Из-за этого я попытался применить class="truncate"
к спаму, содержащему имя, но его не удалось усечь.
Как мне решить эту проблему?
main {
padding: 16px;
}
table {
table-layout: fixed;
}
td {
width: 33.33%;
}
.photo-placeholder {
width: 40px;
height: 40px;
line-height: 40px;
border-radius: 50%;
text-align: center;
display: inline-block;
background-color: crimson;
color: white;
}
.truncate {
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>
<main>
<table id="table1" class="white z-depth-1 centered">
<thead>
<tr>
<th>Col 1</th>
<th>Col 2</th>
<th>Col 3</th>
</tr>
</thead>
<tbody>
<tr>
<td data-label="Col 1">
<span class="photo-placeholder">P</span>
<span class="truncate">Pedro Luis Arend Gonçalves</span>
</td>
<td data-label="Col 2">Info 2</td>
<td data-label="Col 3">Info 3</td>
</tr>
</tbody>
</table>
</main>
JSFiddle
Ожидаемый результат: