I have found a way of printing web pages nicely without too much hassle. From Safari, select File menu -> Save As... Save the document somewhere it will be quick to access. Then, drag the newly created Safari document onto TextEdit.
Once TextEdit opens the web page, you can print it from there and you'll have a perfect print, as long as TextEdit renders the HTML file (which may not always be the case until Apple unifies the HTML rendering library in Mac OS X with WebCore).
[robg adds: I don't do a lot of web printing, but I did notice a couple of glitches in Safari's output. I took a different route to the solution by dragging the URL to one of the other browsers. However, this won't work for pages (like most online store receipts) that are dynamically generated through your session, in which case, the above solution will work. I'm sure there are other workarounds, of course...]

