Basic Frame Elements

Frames have two basic elements, columns and rows, which break the browser window up horizontally (columns) and vertically (rows). You can manipulate these as to width, size, alignment, and placement within the browser window. A frame allows you to keep the vital bits (the logo and menu bar, for example) always in view, while allowing the rest of the content to scroll as needed.

You enable frames with a special frame document with contents that do not get displayed, but simply direct the browser as to how to divide the display window into frames and designate which individual html pages are displayed in each one.

The individual documents referenced and shown in the frame document window act independently, however, the frame document controls the entire window. For example: the browser's "Back" and "Forward" buttons affect then entire frame document, not just the individual content pages. You can specify where the links within the individual frames load, however, by attaching a name to each frame and setting your target parameter (within the link tag) to the frame you want that content to load in.

<a href="menu.html" target="BottomLeftFrame">

A few things to note about frames: Scrollbars automatically appear if the contents are too large for the frame's dimensions, unless disabled in the frame tag. It is quite likely that users with browsers which don't support frames will want to access your site, so be sure to include a link to your text index with the noframes tag. This way, browsers that can handle frames will see them, and those that can't will still be able to access your content.

Structure and Appearance

To build the page you are presently looking at, 2 framesets were used. The first contains 2 columns: the menu(MenuFrame) and the body (BodyFrame). The second contains 2 rows: the header (HeaderFrame) and content(ContentFrame). Each of these frames are preset as to placement on the page (frameborder, framespacing, border) and size (cols="", rows=""). Scrolling can be set to "auto", "yes" or "no", and src, name and title should be consistent.

First Frameset:

<frameset frameborder=0 framespacing=0 border=0 rows="*" cols="130,*">

<frame marginheight=0 marginwidth=0 scrolling="auto" SRC="menu.html" name="Menuframe" title="menu">
<frame marginheight=0 marginwidth=0 SRC="homeframe.html" name="Bodyframe" title="body">
</frameset>

<noframes>
If you cannot see these pages, please use our text index. If you have questions or feedback, feel free to contact us.
</noframes>

</frameset>

Second frameset:

<frameset frameborder=0 framespacing=0 border=0 cols="*" rows="40,*">

<frame marginheight=0 marginwidth=0 scrolling="auto" SRC="homeheader.html" name="Headerframe" title="header">
<frame marginheight=0 marginwidth=0 SRC="homepage.html" name="Contentframe" title="home">
</frameset>

<noframes>
If you cannot see these pages, please use our text index. If you have questions or feedback, feel free to contact us.
</noframes>

</frameset>

Resources/Guides

Frames Tutorial

Framing the Web

Frame Shop

Basic Elements | Tables | Images | Image Maps | Links | Frames | Fonts