The first thing you might ask yourself is how many of the sites you visit every day use frames? Not many? Probably a reason for that, wouldn't you think?

Frames are officially deprecated, meaning you shouldn't use them anymore. A few reasons why:

- They break bookmarking. If your whole site is in frames, the only page a person can bookmark is your home page.

- They cause accessibility problems. People accessing your site with screen readers will have issues making sense of your site.

- They cause SEO problems. Web spiders like Google will have a hard time indexing your site, making it harder to find in search engines.

- They cause printing problems. Frames make it difficult to print content, and more people than you'd think print pages.

- They cause problems for mobile devices, which are the fastest growing segment of the web population.

The best way to do it is to embrace the constraints of the medium and do it like everyone else -- a separate page for everything, and some stuff will have to reload (though it will be cached so it'll load much more quickly on other pages).

If you REALLY want things not to reload, you can use AJAX and load things on the fly, though you'll run into many of the problems you get with frames, and will have to take extra care not to break bookmarking, etc.