Copy link to clipboard
Copied
Okay so I can get margins above headings but for paragraph styles when I apply spacing it applies to the space between every paragraph, where as I only want it to apply to pargraph text relative to the TOP OF THE PAGE. Since EPUB is reflowable, I don't know which text will be at the top of the page at any given point, but I'd like a margin at the top. I tried setting global margins to the document and EPUB ignores it. Pictures explains pretty clearly what I'm trying to do.
Copy link to clipboard
Copied
Reflowable EPUB has no pages. Well, it has one page, broken into display units by the whims of the reader. Thus most things to do with "pages" are missing or meaningless.
This also applies to things like margins, which are nonexistent in the EPUB itself and controlled entirely by the reader.
It's good to understand that reflowable EPUB is the 'liquid' doc format that HTML was originally framed as. You don't want to define pages, margins, headers, footers or, for the most part, fonts and font sizes. It's all relative, and trying too hard to force restrictions on a doc will just set up continuing battles with the actual reader, which wants to control things to suit itself and the user's choices.
EPUB is not about reproducing print pages on a screen — that's a different thing called "PDF." EPUB is about about producing content that will make the most of whatever reader it's on and allow the user to make his/her own choices about type size, spacing, margins, background/type color, etc.
Copy link to clipboard
Copied
That makes more sense, and is a helpful way to think about it. And the fact remains that I currently know how to create a top margin on headings, relative to the frame of the screen, but do not know how to do it for paragraph text. The reason I can do it for headings is, in my case, just that I have them set to always start on a new page, so I can style above them and I know I'm setting that style relative to the top of the screen. But since I don't know where paragraph text will show up in a reflowable document I don't know how to apply dynamic spacing above all paragraph text relative to the screen. How do I do it?
Copy link to clipboard
Copied
Getting space above paragraphs — or, alternately, getting it to collapse as most apps do it — and getting page breaks where you want them is a complicated subject. ID exports work one way in EPUB and another in Kindle, for example, and it's easy to get into a schema that's too convoluted and complex. (Such as breaking the EPUB doc at every new-page start, which leads to other problems.)
But you've put a finger on the key issue here: understanding the fundamental difference between print layout and flowing layout. You have to evolve your viewpoint to stop thinking in terms of hard page breaks, rigid spacing, all of that. You can't predict how text will flow in EPUB, in any way — so rather than expending huge effort trying to get it to behave as print does, you have to adapt your thinking, layout and details to allow that smooth liquid flow, regardless of the reader in use or its settings.
Big conceptual jump for most designers who are used to print or PDF or other fixed layout. 🙂