Why Are Frames Bad?
9 comments | Posted: 17 November 05 in Tutorials, by Matt Heerema
I was recently asked why exactly one should not use framesets for websites. A frames-based page is something I have always sort of recognized as being bad, but have never really had to verbalize or support objectively before, until now. The answer: Frames aren’t inherently bad. However, when you use a frameset as a way of managing a website, that is bad. I came up with five primary reasons.
1. Frames break the fundamental concept model of the web!
- Every problem with frames flows from this problem. The fundamental conceptual model of the Web is this: Every page corresponds to a single URL. One URL = one page. A site that is stuck in a frameset is referenced from one address, but contains many pages. This presents problems with linking to, and book marking a specific article in a frames-based page. The ability for someone to link to your articles and bookmark them is a huge part of how traffic to your site is generated.
2. Using frames for an entire site is an improper use of a frameset page.
- Framesets are a fairly ingenious and very useful method for helping someone navigate through a single, very large document, much like Adobe Acrobat’s navigation pane. However, most websites are a collection of documents on a particular topic: business, organization, etc.
3. Search engines have difficulty indexing framesets.
- Google itself mentions that while it does crawl frameset pages, it has a difficult time knowing how to categorize documents in a frame set.
4. Screen reader technologies do not handle frames based pages very well.
- Those using screen readers cannot quickly scan the contents of multiple pages. All of the content is experienced in a linear fashion, one frame at a time. Frames are not inaccessible to modern screen readers, but they can be disorienting. Varying screen readers handle framesets differently, with the more expensive software having the best handling. However, to the more common screen readers and assistive technologies, the frames are not an insurmountable obstacle, but are an unnecessary impedance. Much like having only one handicap accessible entrance to a building.
5. Framesets unnecessarily complicate site maintenance.
- Most users or clients won’t care about this, unless a developer charges by the hour, but it is very easy for an extensive frames-based site to get disorganized. Broken links and missed
"target"attributes abound, making the behavior of the site erratic. The way I look at it is: entropy applies at a much greater rate to a frames-based site than a non-frames site. Ironically, frames are often naively chosen as a way to efficiently manage a site. If the site is small-scale enough to have only one developer, and it never changes hands, this could be true. However, most often I find that when a developer inherits a frames-based page, the first thing they do is redesign it from the ground up. It is simply too difficult to ascertain what a different developer had in mind with their site model. Furthermore, a website that is encapsulated in frames is sign of amateur site development. It was popular as a novelty in the 1990’s, but was quickly abandoned by professionals after realizing the above five reasons.
6. Why do frames-based sites exist?
- If you look around, you will notice that there are frames-based pages out there. Yet, you will see that there are very few large corporate sites that use frames. I suspect that the reason frames-based pages still exist are WYSIWYG tools such as Frontpage or Dreamweaver. Beginners realize that if they use frames, they only need to update a navigation menu once. This is a very astute observation. The Dreamweaver templating system is an intermediate step up from this. Professionals will recognize that the use of server side includes is the best way to go, in conjunction with a CMS.
Discuss This Topic
Comments closed after 2 weeks.