Вы можете попробовать использовать простое animation
свойства color
с прогрессивной задержкой для каждого <td>
.Последний эффект - последовательная печать столбцов и строк.
Демонстрация Codepen
например
<table>
<thead>
<tr>
<th>Id</th>
<th>Name</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td><td>Name 1</td>
</tr>
...
<tr>
<td>10</td><td>Name 10</td>
</tr>
</tbody>
</table>
CSS
tbody td {
color: rgba(0,0,0, 0);
animation: colorize .15s linear 0s forwards;
}
@keyframes colorize {
from { color: rgba(0,0,0, 0); }
to { color: rgba(0,0,0, 1); }
}
/* first column */
tr:nth-of-type(1) td:nth-of-type(1) { animation-delay: 1s; }
tr:nth-of-type(2) td:nth-of-type(1) { animation-delay: 1.5s; }
tr:nth-of-type(3) td:nth-of-type(1) { animation-delay: 2s; }
tr:nth-of-type(4) td:nth-of-type(1) { animation-delay: 2.5s; }
tr:nth-of-type(5) td:nth-of-type(1) { animation-delay: 3s; }
tr:nth-of-type(6) td:nth-of-type(1) { animation-delay: 3.5s; }
tr:nth-of-type(7) td:nth-of-type(1) { animation-delay: 4s; }
tr:nth-of-type(8) td:nth-of-type(1) { animation-delay: 4.5s; }
tr:nth-of-type(9) td:nth-of-type(1) { animation-delay: 5s; }
tr:nth-of-type(10) td:nth-of-type(1) { animation-delay: 5.5s; }
/* second column */
tr:nth-of-type(1) td:nth-of-type(2) { animation-delay: 6s; }
tr:nth-of-type(2) td:nth-of-type(2) { animation-delay: 6.5s; }
tr:nth-of-type(3) td:nth-of-type(2) { animation-delay: 7s; }
tr:nth-of-type(4) td:nth-of-type(2) { animation-delay: 7.5s; }
tr:nth-of-type(5) td:nth-of-type(2) { animation-delay: 8s; }
tr:nth-of-type(6) td:nth-of-type(2) { animation-delay: 8.5s; }
tr:nth-of-type(7) td:nth-of-type(2) { animation-delay: 9s; }
tr:nth-of-type(8) td:nth-of-type(2) { animation-delay: 9.5s; }
tr:nth-of-type(9) td:nth-of-type(2) { animation-delay: 10s; }
tr:nth-of-type(10) td:nth-of-type(2) { animation-delay: 10.5s; }
Конечно, если выЧтобы иметь (путь) более 10 строк, вы должны сгенерировать animation-delay
с помощью таких инструментов, как less
или sass
(выполнение этого вручную может быть утомительным занятием).