Don't ask me why but some people actual print things (I know who the hell are these people). One of my clients came to me because one of their users was printing a report and the tables looked like this:

They wanted to know if there was anything I could do to keep it from printing like this. My first comment was not to print it but they didn't think that was funny. In order to fix this I added the following to the CSS (actually the SCSS) for their site:

@media only print {
    table{ 
        page-break-inside: avoid;
    }
}

This tells the browser to avoid having page breaks inside a table when printing the results look like this:

It still has problems when the table is larger than a piece of paper but there's really only so much you can do when it comes to printing.