I would like to make a CSS for an HTML resume that ensures that page breaks
come at desired places within the printed version. I know about
page-break-before, page-break-after, etc. but I'm still confused about the
basic techniques of pagination in CSS.
I expect the vast majority of people viewing the resume to be in North
America and to use 8.5 inch X 11 inch paper when printing the resume but how
can I have any idea what margins, fonts (and font sizes), and "extra
information" (file name, date, page numbers, etc.) they have set up in their
browsers and/or printer drivers? And what if some of them are European
companies with North American offices and just happen to use A4 or some
other European page size as a company wide standard?
Some people viewing the resume might not be very computer literate and not
know how to adjust their own settings so it's probably unrealistic for me to
suggest that they change all their print settings to particular values.
Others may be running very old browsers that don't support much CSS or old
printers that don't offer much control.
How do I figure out where to put the page breaks? If I don't know how long
the usable portion of the page is (or, to a lesser extent, how wide it is),
how can I know where to put the page breaks to optimize the use of paper?
Also, I see that page breaks within tables are discouraged
(http://www.blooberry.com/indexdot/cs.../pbbefore.htm).
Unfortunately, the resume has a longish table - Employment History - near
the top and it is unlikely that it will fit within a single page. What "bad
things" are likely to happen if I do a page break within the page? Also,
what behaviour can I expect if I give a value of "avoid"? The description
says "Avoid inserting a page break before the current element box." Does
this mean there will NEVER be a page break before the current box? That
seems unlikely since then I don't see how it would be different from "auto".
Can anyone enlighten me?
Lastly, at the risk of complicating this CSS dramatically, is there any way
that the CSS can determine the user's various settings so that it can
determine just how much room it has so it can set the page breaks
dynamically? That way, I could conceivably compute exactly how much text I
could put on the page so that I could choose the optimum place for a page
break. If this is possible, could someone point me to a tutorial or
well-explained example of this? It's not that I *want* to do something this
complex but it is important for the resume to break in appropriate places
when it is printed so I might be willing to attempt this approach if no one
can suggest a better solution.
--
Rhino