Paged.js
CSS で現在策定中の印刷まわりの下記仕様の polyfill みたいな思想のライブラリーです。
現状の仕様ではテキストがページをまたぐときに、要素全体を次のページに送るのか、分割して次のページに送るのかなどといった細かい制御ができません。このライブラリーではページに入る量を計算して、要素自体を分割しているようです。
Chromium 系では完全に問題なく動くらしく、Firefox では印刷の際にページサイズをユーザーが指定しないとだめらしいです。
試してみたリポジトリー
body 直下にテキストを配置すると JS エラーがでて動きませんでした。div を置いてその中に入れればちゃんと動きます。
Paged.js では解決できない問題
またがったページすべてに繰り返し出力
テーブルのように長過ぎるテキストによってページをまたぐが、ヘッダーはまたいだページすべてに出力したい、といったことは実現できなさそうです (見つけられてないだけか?)。そもそもそういう仕様はないですが、仕様を提案してる人はいます。