html Frames: Why and Why Not


There Are Reasons to Use Frames, And Reasons Not To

I must admit, I hated frames. When our company switched to a framed front page to our site, I was tempted to quit. Our site was redesigned by a design firm who felt that frames were the only way to present our products. My partners and I argued, but were out voted. Our site was framed.

However, to be totally honest, I can now see some of the benefits to frames. It is especially nice to have framed pages without the border to mess with the design. I can’t say that I’ve moved completely over to the dark side and become completely pro-frame, but I can see the benefits.

Why Frame?

  • Frames allow you to keep pertinent information always on the screen.
    Some studies have shown that viewers of the web have a tendency not to scroll very much. While I believe that people will scroll if they find the page interesting, it is better to keep things you want them to see at the top of the page, or in a static frame. 
  • Frames provide a simple way to create a Table of Contents for your site.
    It’s simple because you only need one page of HTML to create the table of contents. If you do a TOC in a table on every page, you have to recreate the same information over and over. 
  • Frames create an advertisment that is always present.
    Advertising may be annoying, but it is an easy way to generate revenue for a Web site. Even if your ads are simply link exchange banners, they are more likely to be hit if they are right in front of your viewers. 
  • Frames allow you to “brand” your site.
    In the same fashion that you can create an advertising space, you can create a space for your Web site logo or Company Information and keep it in a frame so that it is always in view of your readers. Branding helps your audience remember your site, especially if you have a compelling graphical element that allows them to remember you. And if it is always present in a frame, they are more likely to remember it.

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.

You may also like...