page-break-inside:avoid; can only work, if the table can be fitted into a page. If the table you cant fit into a page, it will not work.
As a work around you can use, page-break-before: always
But, table should must be fitted with in a page.
You can check this link for more clarification.[
^]