Use a CSS file with media="print" (to signify that the styles in that file only relate to printers. You can turn things on and off, by putting display: none in your CSS file.
For instance, you could have a header-style which is explicitly given a display: none in your regular CCS file, and wrap your header text in a <span> or <div> tag with that style applied to it. Also, of course, you could put something in your printer's stylesheet that says input {display: none; }, to prevent things like textareas and buttons being included in the printed page.
Also, remeber to use relative (and not absolute) width for things - i.e. <table width="95%"...> instead of <table width="970"...>, since that will allow them to shrink or grow to fill the width that's being given to them. This is a general piece of advice, in fact, since otherwise Jakob Nielsen will call you all sort of names for making him scroll sideways (although there are some who wish he
would bloody scroll off sideways, of course!)
Have a read of what the great Eric Meyer says here:
http://www.meyerweb.com/eric/article...ev/200001.html