It turns out that if you nest a couple hundred <div>s inside each other before you get to the actual contant, GNU Emacs shr (its simple HTML renderer) can't cope with the result and gives you no content.
Guess what some HTML-capable email clients do (possibly after the email is repeatedly mutated and resent).
I wonder if I dare report this as an Emacs shr bug. Reproduction is simple, at least.