Рендеринг таблицы довольно требователен в браузере, потому что он в основном должен отображать содержимое всех ячеек в первую очередь, чтобы иметь возможность определить ширину каждого столбца. Он не может снизить производительность, отображая только то, что в данный момент видно внутри области просмотра.
И наличие таблицы с таким большим количеством строк только делает ее «хуже» - 50000 строк - это много . (Не только для браузера, но, вероятно, и для пользователя. Может быть, имело бы смысл предложить им как-то отфильтровать данные или внедрить нумерацию страниц?)
Вы можете попробовать table-layout:fixed
, чтобы ускорить рендеринг таблицы, для более подробной информации см. http://www.competa.com/blog/speeding-up-rendering-of-large-html-tables/ и https://developer.mozilla.org/en-US/docs/Web/CSS/table-layout
Браузер затем применяет ширину ячеек первой строки таблицы в качестве ширины столбца для всех последующих; поэтому обычно имеет смысл использовать это свойство в сочетании с явно заданными значениями ширины ячейки.