Why Not Frame?
- More than two or three frames on a page can be cluttered.
Frames are hard to navigate in them. The Web as an information medium is not very old and people are still getting used to the idea of "scrolling" to read. Having multiple frames makes it very difficult to follow where to read and where to scroll.
- Not all browsers support them well.
In one study Web navigators were found to use the Back button second only to clicking directly on an anchor. Frames can mess with this functionality and make it impossible to go back. This makes your Web page difficult to use.
- Don't use frames as an ego boost.
Know why you are using the technology you are using. If you are using frames just to show that you can write framesets, you probably should try some other HTML tricks like Dynamic HTML. I always try to create a similar look and feel without framesets and then evaluate the differences. If I feel that the frames add value to the pages, then I use them.
- If your audience can't view frames.
This isn't as relevant now (on our site 90% of our viewers use a frames compliant browser), but if you have a site that attracts people with older browsers and you build with frames you have instantly shut out your audience.
As an aside, you should always use a <noframes> version of your site for people with non-framed browsers. And when I suggest a noframes version, I don't mean a page that simply has a "get Netscape" or "get IE" button on it. The only time this is appropriate is when you have other reasons for wanting an audience with higher level browsers, but realize that you may be annoying people who will someday upgrade and not want to come to your seemingly unfriendly site.
- Frames create additional maintenance and server load.
When you create a frameset with two frames in it, you have three pages to maintain at all times. If your boss suddenly decides that he wants his name mentioned in the copyrights of every page, you have to change three pages, not just one. Also, everytime you create a new frameset, there is a minimum of two (with one frame) or three (with two frames) hits to the server. The more framesets you have, the more hits to the server you generate, without the additional page views. If you have a limit to the amount of traffic to your site, you'd do better to get more page views for your hits.
While frames are not the ultimate evil that some people profess, I still don't use them much on my personal sites. I'd rather spend my time doing page design than worrying about what Netscape 2 users are going to think of the grey line going down the side of my pages or whether I remembered the target="_top" when I've linked to an external site.
Do you hate frames? Comment on the article.

