<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.0/normalize.css" integrity="sha256-7GAtDQ79wTEOjhBKf70uBQG7A5yyb+8rigu07atXWDY=" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/github-markdown-css/2.10.0/github-markdown.css" integrity="sha256-qTBXiGmok0OwSTNA1uvNgoO6GSylS8Ty3TBjogwOxVo=" crossorigin="anonymous">
</head>
<body>
<article class="markdown-body">
<table>
<thead>
<tr>
<th>Non numquam</th>
<th>Lorem markdownum</th>
<th>Duis aute</th>
</tr>
</thead>
<tbody>
<tr>
<td>Google Chrome</td>
<td>Eaque ipsa quae ab illo inventore veritatis et
quasi</td>
<td>Cupiditate non provident, similique sunt in culpa qui
officia deserunt mollitia.</td>
</tr>
<tr>
<td>Mozilla Firefox</td>
<td>Eaque ipsa quae ab illo inventore veritatis et
quasi</td>
<td>Cupiditate non provident, similique sunt in culpa qui
officia deserunt mollitia.</td>
</tr>
</tbody>
</table>
</article>
</body>
</html>


Minimal use case:
<style>
body {
word-wrap: break-word;
}
table {
border-collapse: collapse;
display: block;
overflow: auto;
}
th, td {
border: 1px solid;
}
</style>
<table>
<tbody>
<tr>
<td>Non numquam</td>
<td>Eaque ipsa quae ab illo inventore veritatis et quasi</td>
<td>Cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia.</td>
</tr>
</tbody>
</table>
word-wrap: break-word, but in table layout this seems to be ignored for some reason. It's more an implementation detail than a real bug in WeasyPrint IMHO, but I'll try to fix this if it's easy.table { display: block; overflow: auto }. That's a bug I have to fix. (table { display: block }, really?!)For the record, the spec says:
Soft wrap opportunities introduced by overflow-wrap: break-word are not considered when calculating min-content intrinsic sizes.

(Don't expect future bugs to be fixed that fast :wink:)
Most helpful comment
(Don't expect future bugs to be fixed that fast :wink:)