Javascript would be the best way to do this, but as you note, not all ebook reading systems support Javascript—in fact, very few of them beyond iBooks do. Without Javascript, this isn't really possible, unfortunately. The doppletext site that you link to uses Javascript, for example.
Ebook reading systems support a fairly limited subset of HTML and CSS. Of particular relevance, most of them do not support the advanced CSS selectors like the type being used in the checkbox hack that you link—there's no selecting the adjacent sibling.
The only other option that I can think of is epub 3.0's epub:trigger
. Unfortunately, at present that only allows you to toggle visibility:hidden
and not display:none
, which means the space the invisible paragraphs take up will still be there, so you'll have giant translation-sized holes in your text. Even if the IDPF adds a display
control to epub:trigger
, epub 3 support in reading systems is sadly lacking (despite it being the approved standard for two and a half years now), so that probably won't get you any farther than using Javascript.
Sorry for being the bearer of bad news! I'd love to be proven wrong on this—I've worked on several ebook projects that could benefit from this type of thing, and have never been able to find a way to do this acceptably other than with Javascript.