The alternative to table-based layout is to use CSS (Cascading Style Sheets).
For me, one of the best ways to learn is to read the
CSS Specifications.
Most other people are happier learning from some of the available
CSS Tutorials.
CSS is an excellent method for building reusable code into your HTML. It enables you to make smaller and easier to maintain pages that carry a consistent look and feel across an entire web site.
It's pretty easy to start using CSS for fonts and colors. It's a wee bit more difficult to get CSS layouts to work properly.