Frames divide a browser window into several pieces or panes, each pane containing a separate XHTML/HTML document. One of the key advantages that frames offer is that you can then load and reload single panes without having to reload the entire contents of the browser window. A collection of frames in the browser window is known as a frameset.

The window is divided up into frames in a similar pattern to the way tables are organized: into rows and columns. The simplest of framesets might just divide the screen into two rows, while a complex frameset could use several rows and columns.

There are few drawbacks also you should be aware of with frames are as follows:

  • Some browsers do not print well from framesets.
  • Some smaller devices cannot cope with frames, often because their screen is not big enough to be divided up.
  • Some time your page will be displayed differently on different computers due to different screen resolution.
  • The browser’s back button might not work as the user hopes.
  • There are still few browsers who do not support farme technology.

To create a frameset document, first you need the <frameset> element, which is used instead of the <body> element. The frameset defines the rows and columns your page is divided into, which in turn specify where each individual frame will go. Each frame is then represented by a <frame> element.

You also need to learn the <noframes> element, which provides a message for users whose browsers do not support frames.

The <frame> Element Attributes:

Following are important attributes of and should be known to you to use frames.

  • src: indicates the file that should be used in the frame. Its value can be any URL. For example, src=”/html/top_frame.htm” will load an HTML file avaible in html directory.
  • name: attribute allows you to give a name to a frame. It is used to indicate which frame a document should be loaded into. This is especially important when you want to create links in one frame that load pages into a second frame, in which case the second frame needs a name to identify itself as the target of the link.
  • frameborder: attribute specifies whether or not the borders of that frame are shown; it overrides the value given in the frameborder attribute on the <frameset> element if one is given, and the possible values are the same. This can take values either 1 (yes) or 0 (no).
  • marginwidth: allows you to specify the width of the space between the left and right of the frame’s borders and the frame’s content. The value is given in pixels. For example marginwidth=”10″.
  • marginheight: allows you to specify the height of the space between the top and bottom of the frame’s borders and its contents. The value is given in pixels. For example marginheight=”10″.
  • noresize: By default you can resize any frame by clicking and dragging on the borders of a frame. The noresize attribute prevents a user from being able to resize the frame. For example noresize=”noresize”.
  • scrolling: controls the appearance of the scrollbars that appear on the frame. This takes values either “yes”, “no” or “auto”. For example scrolling=”no” means it should not have scroll bars.
  • longdesc: allows you to provide a link to another page containing a long description of the contents of the frame. For example longdesc=”framedescription.htm”







A password will be e-mailed to you.

Feedback Form

Name (required)

Email (required)