0% found this document useful (0 votes)
18 views6 pages

HTML Frames: Syntax and Examples

HTML frames allow the division of a browser window into multiple sections, each capable of loading separate HTML documents, using the <frameset> and <frame> tags. However, the <frame> tag is deprecated in HTML5, and alternatives like <iframe> or CSS with <div> are recommended. Despite their utility, frames have disadvantages such as compatibility issues with smaller devices and inconsistent display across different resolutions.

Uploaded by

ankita sinha
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views6 pages

HTML Frames: Syntax and Examples

HTML frames allow the division of a browser window into multiple sections, each capable of loading separate HTML documents, using the <frameset> and <frame> tags. However, the <frame> tag is deprecated in HTML5, and alternatives like <iframe> or CSS with <div> are recommended. Despite their utility, frames have disadvantages such as compatibility issues with smaller devices and inconsistent display across different resolutions.

Uploaded by

ankita sinha
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

30/07/2025, 17:40 HTML Frames

HTML - Frames

HTML frames are used to divide your browser window into multiple sections where each
section can load a separate HTML document independently. A collection of frames in the
browser window is known as a frameset. The window is divided into frames in a similar way
the tables are organized: into rows and columns.

The <frame> tag is no longer recommended as it is not supported by HTML5.


Instead of using this tag, we can use the <iframe> or <div> with CSS to achieve
the similar effects.

Syntax

<frameset rows="50%,50%">
<frame name="top" src="link/to/frame1" />
<frame name="bottom" src="link/to/frame2" />
</frameset>

Where the rows attribute of frameset defines the division of the window into horizontal
sections. In this case, the window is divided into two rows, each taking up 50% of the
available height.

Examples of HTML Frames


Here are some example codes that illustrate how to manipulate frames in HTML.

Creating Frames in HTML


To make frames on a page we use <frameset> tag instead of <body>
tag. The <frameset> tag defines how to divide the window into frames. The rows attribute
of <frameset> tag defines horizontal frames and cols attribute defines vertical frames. Each
frame is indicated by <frame> tag and it defines which HTML document shall open into the
frame.

Following is the example to create three horizontal frames. If your browser does not support
frames, then body element is displayed.

Open Compiler

<!DOCTYPE html>
<html>

[Link] 1/6
30/07/2025, 17:40 HTML Frames

<head>
<title>HTML Frames</title>
</head>
<frameset rows="10%,80%,10%">
<frame name="top" src="/html/top_frame.htm" />
<frame name="main" src="/html/main_frame.htm" />
<frame name="bottom" src="/html/bottom_frame.htm" />
<noframes>
<body>
Your browser does not support frames.
</body>
</noframes>
</frameset>
</html>

Creating vertical Frames


Here we replaced rows attribute by cols and changed their width. This will create all the three
frames vertically.

Open Compiler

<!DOCTYPE html>
<html>
<head>
<title>HTML Frames</title>
</head>
<frameset cols="25%,50%,25%">
<frame name="left" src="/html/top_frame.htm" />
<frame name="center" src="/html/main_frame.htm" />
<frame name="right" src="/html/bottom_frame.htm" />
<noframes>
<body>
Your browser does not support frames.
</body>
</noframes>
</frameset>
</html>

Frame's name and target Attributes


One of the most popular uses of frames is to place navigation bars in one frame and then load
main pages into a separate frame.
[Link] 2/6
30/07/2025, 17:40 HTML Frames

Let's see following example where a [Link] file has following code:

Open Compiler

<!DOCTYPE html>
<html>
<head>
<title>HTML Target Frames</title>
</head>
<frameset cols="200, *">
<frame src="/html/[Link]" name="menu_page" />
<frame src="/html/[Link]" name="main_page" />
<noframes>
<body>
Your browser does not support frames.
</body>
</noframes>
</frameset>
</html>

Here we have created two columns to fill with two frames. The first frame is 200 pixels wide
and will contain the navigation menubar implemented by [Link] file. The second column
fills in remaining space and will contain the main part of the page and it is implemented
by [Link] file. For all the three links available in menubar, we have mentioned target
frame as main_page, so whenever you click any of the links in menubar, available link will
open in main_page.

Following is the content of [Link] file

Open Compiler

<!DOCTYPE html>
<html>
<body bgcolor="#4a7d49">
<a href="[Link] target="main_page">
Google
</a>
<br /><br />
<a href="[Link] target="main_page">
Microsoft
</a>
<br /><br />
<a href="[Link] target="main_page">
BBC News

[Link] 3/6
30/07/2025, 17:40 HTML Frames

</a>
</body>
</html>

Following is the content of [Link] file:

Open Compiler

<!DOCTYPE html>
<html>
<body bgcolor="#b5dcb3">
<h3>
This is main page and content from any link
will be displayed here.
</h3>
<p>
So now click any link and see the result.
</p>
</body>
</html>

Attributes of frameset Tag


Below listed attributes are accepted by frameset tag.

Attributes Description

Specifies how many columns are contained in the frameset and the
size of each column. You can specify the width of each column in one
of four ways.

Absolute values in pixels. For example to create three vertical


frames, use cols="100, 500,100".
A percentage of the browser window. For example to create
three vertical frames, use cols="10%, 80%,10%".
cols Using a wildcard symbol. For example to create three vertical
frames, use cols="10%, *,10%". In this case wildcard takes
remainder of the window.
As relative widths of the browser window. For example to create
three vertical frames, use cols="3*,2*,1*". This is an
alternative to percentages. You can use relative widths of the
browser window. Here the window is divided into sixths: the
first column takes up half of the window, the second takes one
third, and the third takes one sixth.

rows This attribute works just like the cols attribute and takes the same
values, but it is used to specify the rows in the frameset. For

[Link] 4/6
30/07/2025, 17:40 HTML Frames

example to create two horizontal frames, use rows="10%, 90%". You


can specify the height of each row in the same way as explained
above for columns.

This attribute specifies the width of the border of each frame in


border
pixels. For example border="5". A value of zero means no border.

This attribute specifies whether a three-dimensional border should be


frameborder displayed between frames. This attribute takes value either 1 (yes)
or 0 (no). For example frameborder="0" specifies no border.

This attribute specifies the amount of space between frames in a


frameset. This can take any integer value. For example
framespacing
framespacing="10" means there should be 10 pixels spacing between
each frames.

HTML <frame> Tag Attributes


Below listed arrtibutes are accepted by the frame tag.

Attribute Description

This attribute is used to give the file name that should be loaded in
the frame. Its value can be any URL. For example,
src
src="/html/top_frame.htm" will load an HTML file available in html
directory.

This 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
name especially important when you want to create links in one frame that
load pages into an another frame, in which case the second frame
needs a name to identify itself as the target of the link.

This attribute specifies whether or not the borders of that frame are
shown; it overrides the value given in the frameborder attribute on
frameborder
the <frameset> tag if one is given, and this can take values either 1
(yes) or 0 (no).

This attribute allows you to specify the width of the space between
marginwidth the left and right of the frame's borders and the frame's content. The
value is given in pixels. For example marginwidth="10".

This attribute allows you to specify the height of the space between
marginheight the top and bottom of the frame's borders and its contents. The value
is given in pixels. For example marginheight="10".

By default you can resize any frame by clicking and dragging on the
noresize borders of a frame. The noresize attribute prevents a user from being
able to resize the frame. For example noresize="noresize".

This attribute controls the appearance of the scrollbars that appear


scrolling on the frame. This takes values either "yes", "no" or "auto". For
example scrolling="no" means it should not have scroll bars.

This attribute allows you to provide a link to another page containing


longdesc a long description of the contents of the frame. For example
longdesc="[Link]"

[Link] 5/6
30/07/2025, 17:40 HTML Frames

Disadvantages of Frames
There are few drawbacks with using frames, so it's never recommended to use frames in your
webpages.

Some smaller devices cannot cope with frames often because their screen is not big
enough to be divided up.
Sometimes 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 that do not support frame technology.

[Link] 6/6

You might also like