Here is what it should look like (from a previous compile, several days ago, but I can't think of any specific styling changes I've made to this particular topic:
And here is a different topic in the same compile as the "bad" topic:
Ah, I solved it, but am still going to post this, in case anyone else runs into it. It turns out that somehow I had introduced a second <body> elements, which was body.front, and was overlaying the other <body>, For some reason this wasn't detectable (at least I didn't detect it) in the XHTML view. But when I clicked in the Text view a faint box surrounded (most of) the topic. (I'd send a screenshot of this, but I managed to delete the body.front intruder and I don't want to try reintroduce it for a screeenshot.