Here is a demonstration of how you can use CSS to control the presentation of your web pages. It's not especially pretty, but it gets the idea across. See http://www.SpicePuppy.com/2007/07/creating-beautiful-web-pages-through-css.html for details.
The HTML file simply contains the structural markup, identifying headers and paragraphs and such, but does not say anything about how to display them. That means no font tags. Even simple tags like <b> and <i> should be replaced with <strong> and <em>, in case you or the user ever wants to override their default rendering with a style sheet.
Presentation is handled by the CSS file. You just tell it how you want each element rendered. By keeping all the style information in a separate style sheet instead of in the HTML, you can easily change the look and feel of your whole website at any time.