Sent by Marcus Duke on 29 November 2004 16:04
just a quick update to let you know that "static" property value seemed
to cure most of the ailments. oddly, bottom-of-page truncations also
seemed to cease despite your noting the below specifications would not
address that. go figure, but thanks much for the help and
illumination--it made a big difference in my client's happiness and i
really appreciate it!
Marcus Duke
Webmaster/Info Specialist
UW Aquatic & Fishery Sciences
On Nov 22, 2004, at 11:43 AM, Syntactic: Jim Wilkinson wrote:
> Hi Marcus,
>
> There are quite a few issues here. To set the scene, there is a
> distinction between margins as seen and implemented by the printer and
> margins as defined by CSS. I think you're imagining that they are one
> and the same and that the margins on <body> are measured from the
> physical edge of the paper. If so, you're far from alone! This Wiki
> page might make things clear:-
>
> http://css-discuss.incutio.com/?page=PrintStylesheets
>
> Things would be straightforward if all the content was contained
> within the box associated with <body> (as is usually the case but by
> no means always). The further complication in your case arises from
> the interesting (shall we say) overall document structure generated by
> Adobe GoLive. All of the content in fact sits outside of the <body>
> box (which is reduced to a line of zero height, visible if you put a
> border on it) because the content (e.g. in div#content) is absolutely
> positioned.
>
> As a hand-coder, I know what position:absolute does but I've never
> used it and I can't say how it would behave when you come to print a
> document. Very oddly, it appears!
>
> A positioning expert may be able to help you further. You only want to
> print the #content div (I think) so I tried a rough hack of your print
> stylesheet and got quite a good result (of course, you'd have to test
> it on several printers). Here are rough replacements for two of your
> rulesets:-
>
> #content {
> text-align: left; margin: 0 auto; padding-right: 0;
> position: static; z-index: 1; visibility: visible; display: block }
>
> body {
> color: black; background-color: white;
> margin: 0;
> border: 1px solid red; }
>
> The solid red border is just so that you can see what's going on. Add
> it temporarily to your screen stylesheet as well. The main thing I've
> done is to change the positioning of div#content from absolute to
> static (i.e. normal flow) on the assumption that it's the only div to
> be printed.
>
> When you've had a play, come back to the list if you need further help.
>
> --
> Jim Wilkinson
>
> Cardiff, Wales UK
>
> Opera e-mail client: http://www.opera.com/m2/
______________________________________________________________________
css-discuss [EMAIL-REMOVED]]
http://www.css-discuss.org/mailman/listinfo/css-d
List wiki/FAQ -- http://css-discuss.incutio.com/
Supported by evolt.org -- http://www.evolt.org/help_support_evolt/