Frames-based pages are not standard Web pages; they are meta-documents that split the browser window into sections, pulling standard HTML documents into each section, or frame. Frames-based sites have advantages, though they generally favor the designer, not the user. Site maintenance is easier because standard site elements—such as navigation—can be handled by just one document. Design consistency is easier to achieve with frames for the same reason: one or two files can manage the user interface for an entire Web site.
The shortcomings of frames surface when they are considered from a user’s perspective. In some respects, frames-based pages are easy to use. Site design is generally consistent, which makes it easier for users to learn a Web site. When site navigation is in its own frame, users can scroll though content without losing sight of navigation options. However, frames-based pages function differently than standard Web pages; essential browser functions—like printing, bookmarking, and browser-based navigation—do not behave according to expectations. Printing a frames-based page creates a printout of whichever frame currently has focus, which might happen to be the banner or navigation frame, not a content frame. A bookmark to a frames-based page links to the original meta-document, even if the user wants to return to a page several links deep in the content frame. And the ever-popular back button moves the user back in the frame rather than back in the page. These inherent usability concerns make frames a construct generally to be avoided.
When frames are used, nonvisual users and users who cannot access framed content encounter particular problems—though some of these can be addressed using proper HTML coding. Nonvisual users do not have access to the visual cues that differentiate frames. When information about each frame is provided in the frame title, nonvisual users can understand the functional purpose of each frame and navigate among them. Users without access to frames can still access site content if navigation links are provided in the
NOFRAMES tag. Content within the
NOFRAMES tag displays when frames are disabled or unavailable, so users without frames can use those links to gain access to site content.