Transcript HTML Frames

HTML Frames
http://jjcweb.jjay.cuny.edu/ssengupta/
10/23/2009
1
Objectives

Explore the uses of frames in a Web site

Display a document within a frame

Format the appearance of a frame
10/23/2009
2
What is a frame?

A frame is a section of the browser window capable
of displaying the contents of an entire Web page
10/23/2009
3
Remember!

The browser has to load multiple HTML files
when working with frames
10/23/2009
4
Planning Your Frames first

Before you start creating your frames, plan their
appearance and how they are to be used:
o What information will be displayed in each frame?
o How do you want the frames placed on the Web page?
o What is the size of each frame?
o What Web pages will users first see when they access the
site?
o Should users be permitted to resize the frames to suit their
needs?
10/23/2009
5
Planning Your Frames
10/23/2009
6
Frameset


A frameset describes the frame layout
The <frameset> element is used to store the
definitions of the various frames in the file.
These definitions will typically include:
o Size and location of the frame
o Web pages the frames display
10/23/2009
7
Frameset



What is the tag used for frameset?
<frameset>…</frameset>
example
<html>
<head>
<title>Learning Frames</title>
</head>
<frameset>
define frames here
</frameset>
</html>
10/23/2009
8
Frames Defined in Either Rows
or Columns
10/23/2009
9
Frames in rows or columns


You must choose to layout your frames in
either rows or columns
To create a frame layout, you will use the
rows and cols attributes of the <frameset>
element
o The rows attribute creates a row of frames
o The cols attribute creates a column of frames
10/23/2009
10
rows, cols attribute for <frameset>

Creating a row frame layout
o attribute name: rows
o attribute value: number of pixels | percentage | *
<frameset rows=“row height1, row height2, row
height3, …”>

Creating a column frame layout
o attribute name: cols
o attribute value: number of pixels | percentage | *
<frameset cols=“column width1, column width2,
column width3”>
10/23/2009
11
Content of frames

So, now I have created the frame layout!!

But, what goes inside the frames?
HTML files!!!
10/23/2009
12
Looking back at the first example
10/23/2009
13
Define frame source

use <frame> tag within
o <frameset> & </frameset> tags
<frameset rows=“100,*”>
<frame src=“heading-part.html”>
<frame src=“main-body.html”>
</frameset>
10/23/2009
14
Creating a Nested Set of Frames
in the Second Frame Row
10/23/2009
15
Nesting framesets

nesting one pair of <frameset> tags in
another
<frameset rows=“100,*”>
<frame src=“heading.html”>
<frameset col=“140,*”>
<frame src=“body_left.html”>
<frame src=“body_right.html”>
</frameset>
</frameset>
10/23/2009
16
Formatting a Frame

You can control three attributes of a frame:
o Scroll bars
o The size of the margin between the source
document and the frame border
o Whether or not the user is allowed to change the
size of the frame
10/23/2009
17
Hiding and Displaying Scroll Bars
By default, scroll bars are displayed when
the content of the source page cannot fit
within the frame
 You can override the default setting using
the scrolling attribute


The scrolling syntax is: scrolling=“type”
o scrolling can either be “yes” (to always display
scroll bars) or “no” (to never display scroll bars)
10/23/2009
18
Example: Removing the Scroll Bars
10/23/2009
19
Specifying Margins Syntax

The syntax for specifying margins for a frame:
marginheight=“value” marginwidth=“value”
o marginheight is the amount of space, in pixels, above and
below the content of the page in the frame
o marginwidth is the amount of space to the left and right of
the page


If you specify only one, the browser assumes that you
want to use the same value for both
Setting margin values is a process of trial and error as
you determine what combination of margin sizes looks
best
10/23/2009
20
Resizing of frames

restrict resizing of a frame
o attribute name, noresize
10/23/2009
21
Name of a frame

Also, very important: assign name to frames
o attribute name, name
o attribute value, “frame_name”
o Note, you can provide any unique name for a
frame. We will see shortly why frame name is
important.
10/23/2009
22
Example
10/23/2009
23
More attributes for <frameset> tag

change width of frame border
o attribute name: border
o attribute value: “number of pixels”

change color of frame border
o attribute name: bordercolor
o attribute value: “a color”

example
<frameset border=“5” bordercolor=“brown”>
……
10/23/2009
24
Working with Frames and Links
By default, clicking a link within a frame
opens the linked file inside the same frame
 You can display hyperlinks in many ways:

o In a different frame
o In a new window
o In the entire window

When you want to control the behavior of
links in a framed page, there are two
required steps:
o Give each frame on the page a name
o Point each hyperlink to one of the named frames
10/23/2009
25
Specifying a Link Target


You can use the target attribute to open a
page in a specific frame
The syntax for this is: target=“name”
10/23/2009
26
Using Reserved Target Names


Reserved target names are special names that can be
used in place of a frame name as the target
They are useful in situations:
o Where the name of the frame is unavailable
o When you want the page to appear in a new window
o When you want the page to replace the current browser window


All reserved target names begin with the underscore
character ( _ ) to distinguish them from other target
names
Reserved target names are case-sensitive, they must be
entered in lowercase
10/23/2009
27
Using Reserved Target Names
10/23/2009
28
Using the _self Target
10/23/2009
29
Using the <noframes> Element




Use the <noframes> element to allow your Web site to be
viewable using browsers that do or do not support frames
When a browser that supports frames processes this code, it
ignores everything within the <noframes> elements and
concentrates solely on the code within the <frameset>
elements
When a browser that doesn’t support frames processes this
code, it doesn’t know what to do with the <frameset> and
<noframes> elements, so it ignores them
When you use the <noframes> element, you must include
<body> elements, this way, both types of browsers are
supported within a single HTML file
10/23/2009
30
The <noframes> Syntax

The syntax for the <noframes> element is:
<html>
<head>
<title>title</title>
</head>
<frameset>
frames
<noframes>
<body>
page content
</body>
</noframes>
</frameset>
</html>
10/23/2009
31
Frameless Version of a Web Site
10/23/2009
32