HTML: To Frame or not to Frame
Dan Burns asks: "I work in a large firm and manage the website there and our website uses Frames for navigation and a scrolling news ticker. A consultant has been hired to develop an add on to the site. The work that she is doing will not work in within the frame structure and she insists that frames have been deprecated in order to support her style of design. I could care less if the group she is creating this for wants it this way, but I question the statement that frames have been deprecated. Is there any justification to this statement or is she blowing smoke? "
Looking at the list of new and deprecated elements carried in the w3c's specification for HTML 4, I see:
The following elements are deprecated: APPLET, BASEFONT, CENTER, DIR, FONT, ISINDEX, MENU, STRIKE, and U.
and
The new elements in HTML 4.0 are: ABBR, ACRONYM, BDO, BUTTON, COL, COLGROUP, DEL, FIELDSET, FRAME, FRAMESET, IFRAME , INS, LABEL, LEGEND, NOFRAMES , NOSCRIPT, OBJECT, OPTGROUP, PARAM, S (deprecated), SPAN, TBODY, TFOOT, THEAD, and Q.
It could be that she's gotten confused over the fact that the w3c also identifies "frameset HTML" as a "flavor" of HTML. But the frames-related tags aren't marked as deprecated anywhere in the document posted as "latest" on the w3c's page.
I'm guessing she's trying to use what she thinks is a $10 word (deprecated) to describe a design concept (unneeded and inappropriate).
------------
Michael Hall
mphall@cstone.nospam.net
Michael Hall
mph.puddingbowl.org
One of the better summaries is Why Frames Suck (Most of the Time), one of Jakob Nielsen's Alertbox columns. He's revised his opinions a couple of times since the original (it was written in December of 1996), but still holds to them; check out his "Top Ten Mistakes" Revisited column, for example.
I strongly recommend his entire site, which is full of advice on various web design and usability issues. You may not agree with all of them (I'm not sure I agree with him about scrolling web pages), but I've found the issues he raises all worth thinking about.
1. Older browsers can't see them, and if someone's been ignoring those "Upgrade Your Browser So You Can See My Site!" noframes notices for this long, they're certainly NOT going to upgrade just for you.
2. Most search engine robots can't go through frames sites. If they can't go through, you can't get indexed. If you can't get indexed, nobody finds your site.
3. Bookmarking, Bookmarking, Bookmarking. You want people to bookmark your site, right? Do you really expect them to bookmark the first page of your site and THEN go surfing to the correct page every time they want to see something? Alternatley, if they DO know about the right-click bookmark frame page trick, you're going to have to have ALL the navigation you had frames to take care of on each one of those pages so people can get around if they're going to a single bookmarked/linked page.
4. Many many people find those scrollbars everywhere incredibly annoying. You can't use ANY kind of tiled background (when you scroll, the background doesn't match up, looks dumb..but so do tiled backgrounds)
Okay. Now, the reasons people use frames.
1. Ease of navigation.
If your site depends on frames to give it good navigation, you need help. It's NOT that hard to implement a good table-based navigation scheme that doesn't have the problems of the frames-based design.
2. Pages don't have to reload.
Yes, it will speed up your current site, but if you REALLY need frames to give it that extra little speed increase you really need to learn image optimization and alternate ways of doing design that don't involve huge graphics.
3. Can change one frame file and all the pages are changed.
This can be also done with SSI, CGI, ASP, or Front Page Includes. There's no reason why you SHOULDN'T be able to use any of these methods, and you will often find these are MORE useful for frames (Can change copyright info, etc.)
There we go. If you want a more in-depth discussion of frames, point your browser over to C|Net's Builder Buzz and do a search for "Frames"