The HR element causes a horizontal rule to be rendered by visual user agents. 
The amount of vertical space inserted between a rule and the content that surrounds it depends on the user
agent. 
DEPRECATED EXAMPLE:
This example centers the rules, sizing them to half the available width between the margins. The top rule
has the default thickness while the bottom two are set to 5 pixels. The bottom rule should be rendered in a
solid color without shading: 
<HR width="50%" align="center">
<HR size="5" width="50%" align="center">
<HR noshade size="5" width="50%" align="center">
These rules might be rendered as follows: 
191
15.3 Rules: the HR element
Enable pdf thumbnails - software application dll:C# PDF Thumbnail Create SDK: Draw thumbnail images for PDF in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Thumbnail Generation with Various Options for Quick PDF Navigation
www.rasteredge.com
Enable pdf thumbnails - software application dll:VB.NET PDF Thumbnail Create SDK: Draw thumbnail images for PDF in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Thumbnail Generation with Various Options for Quick PDF Navigation
www.rasteredge.com
192
15.3 Rules: the HR element
software application dll:VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
Embedded page thumbnails. outputFilePath = Program.RootPath + "\\" 3_optimized.pdf"; 'create optimizing for Monochrome Image 'to enable dowmsampling for
www.rasteredge.com
software application dll:C# PDF File Compress Library: Compress reduce PDF size in C#.net
Embedded page thumbnails. outputFilePath = Program.RootPath + "\\" 3_optimized.pdf"; // create optimizing Monochrome Image -- // to enable downsampling for
www.rasteredge.com
16 Frames
Contents 
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
193
1.  Introduction to frames 
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
194
2.  Layout of frames 
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
194
1.  The FRAMESET element 
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
195
Rows and columns 
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
196
Nested frame sets 
.
.
.
.
.
.
.
.
.
.
.
.
.
.
196
Sharing data among frames
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
197
2.  The FRAME element 
.
.
.
.
.
.
.
.
.
.
.
.
198
Setting the initial contents of a frame 
.
.
.
.
.
.
.
.
.
.
.
.
.
.
199
Visual rendering of a frame
.
.
.
.
.
.
.
.
.
.
.
.
.
.
200
3.  Specifying target frame information 
.
.
.
.
.
.
.
.
.
.
.
.
.
.
201
1.  Setting the default target for links 
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
202
2.  Target semantics
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
202
4.  Alternate content 
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
202
1.  The NOFRAMES element 
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
203
2.  Long descriptions of frames
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
204
5.  Inline frames: the IFRAME element
16.1 Introduction to frames
HTML frames allow authors to present documents in multiple views, which may be independent windows
or subwindows. Multiple views offer designers a way to keep certain information visible, while other
views are scrolled or replaced. For example, within the same window, one frame might display a static
banner, a second a navigation menu, and a third the main document that can be scrolled though or
replaced by navigating in the second frame. 
Here is a simple frame document: 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
"http://www.w3.org/TR/REC-html40/frameset.dtd">
<HTML>
<HEAD>
<TITLE>A simple frameset document</TITLE>
</HEAD>
<FRAMESET cols="20%, 80%">
<FRAMESET rows="100, 200">
<FRAME src="contents_of_frame1.html">
<FRAME src="contents_of_frame2.gif">
</FRAMESET>
<FRAME src="contents_of_frame3.html">
<NOFRAMES>
<P>This frameset document contains:
<UL>
<LI><A href="contents_of_frame1.html">Some neat contents</A>
<LI><IMG src="contents_of_frame2.gif" alt="A neat image">
193
16 Frames
software application dll:C# HTML5 PDF Viewer SDK to view, annotate, create and convert PDF
framework class. An advanced PDF editor enable C# users to edit PDF text, image and pages in Visual Studio .NET project. Support to
www.rasteredge.com
software application dll:C# HTML5 PDF Viewer SDK deployment on IIS in .NET
and set the “Physical path” to the place where you store XDoc.PDF.HTML5 Viewer Demo. Pool Defaults…" in the right panel, and set the value "Enable 32-Bit
www.rasteredge.com
<LI><A href="contents_of_frame3.html">Some other neat contents</A>
</UL>
</NOFRAMES>
</FRAMESET>
</HTML>
that might create a frame layout something like this: 
---------------------------------------
|         |                             |
|         |                             |
| Frame 1 |                             |
|         |                             |
|         |                             |
|---------|                             |
|         |          Frame 3            |
|         |                             |
|         |                             |
|         |                             |
| Frame 2 |                             |
|         |                             |
|         |                             |
|         |                             |
|         |                             |
---------------------------------------
If the user agent can't display frames or is configured not to, it will render the contents of the NOFRAMES
element. 
16.2 Layout of frames
An HTML document that describes frame layout (called a frameset document) has a different makeup
than an HTML document without frames. A standard document has one HEAD section and one BODY. A
frameset document has a HEAD, and a FRAMESET in place of the BODY. 
The FRAMESET section of a document specifies the layout of views in the main user agent window. In
addition, the FRAMESET section can contain a NOFRAMES element to provide alternate content [p.202] 
for user agents that do not support frames or are configured not to display frames. 
Elements that might normally be placed in the BODY element must not appear before the first FRAMESET
element or the FRAMESET will be ignored. 
16.2.1 The FRAMESET element
<![ %HTML.Frameset; [
<!ELEMENT FRAMESET - - ((FRAMESET|FRAME)+ & NOFRAMES?) -- window subdivision-->
<!ATTLIST FRAMESET
%coreattrs;                          -- id, class, style, title --
rows        %MultiLengths; #IMPLIED  -- list of lengths,
default: 100% (1 row) --
cols        %MultiLengths; #IMPLIED  -- list of lengths,
default: 100% (1 col) --
194
16.2 Layout of frames
software application dll:VB.NET PDF - VB.NET HTML5 PDF Viewer Deployment on IIS
and set the “Physical path” to the place where you store XDoc.PDF.HTML5 Viewer Demo. Pool Defaults…" in the right panel, and set the value "Enable 32-Bit
www.rasteredge.com
software application dll:C# PDF Page Rotate Library: rotate PDF page permanently in C#.net
Enable batch changing PDF page orientation without other PDF reader control. Support to overwrite PDF and save rotation changes to original PDF file.
www.rasteredge.com
onload      %Script;       #IMPLIED  -- all the frames have been loaded  -- 
onunload    %Script;       #IMPLIED  -- all the frames have been removed -- 
>
]]>
Attribute definitions
rows = multi-length-list [p.46] [CN] [p.43] 
This attribute specifies the layout of horizontal frames. It is a comma-separated list of pixels,
percentages, and relative lengths. The default value is 100%, meaning one row. 
cols = multi-length-list [p.46] [CN] [p.43] 
This attribute specifies the layout of vertical frames. It is a comma-separated list of pixels,
percentages, and relative lengths. The default value is 100%, meaning one column. 
Attributes defined elsewhere 
id, class (document-wide identifiers [p.65] ) 
title (element title [p.57] ) 
style (inline style information [p.174] ) 
onload, onunload (intrinsic events [p.240] )
The FRAMESET element specifies the layout of the main user window in terms of rectangular subspaces. 
Rows and columns 
Setting the rows attribute defines the number of horizontal subspaces in a frameset. Setting the cols
attribute defines the number of vertical subspaces. Both attributes may be set simultaneously to create a
grid. 
If the rows attribute is not set, each column extends the entire length of the page. If the cols attribute is
not set, each row extends the entire width of the page. If neither attribute is set, the frame takes up exactly
the size of the page. 
Frames are created left-to-right for columns and top-to-bottom for rows. When both attributes are
specified, views are created left-to-right in the top row, left-to-right in the second row, etc. 
The first example divides the screen vertically in two (i.e., creates a top half and a bottom half). 
<FRAMESET rows="50%, 50%">
...the rest of the definition...
</FRAMESET>
The next example creates three columns: the second has a fixed width of 250 pixels (useful, for example,
to hold an image with a known size). The first receives 25% of the remaining space and the third 75% of
the remaining space. 
<FRAMESET cols="1*,250,3*">
...the rest of the definition...
</FRAMESET>
195
16.2.1 The FRAMESET element
software application dll:C# Create PDF from OpenOffice to convert odt, odp files to PDF in
with XDoc.PDF SDK. Enable C#.NET Users to Create PDF OpenOffice Document (Odt, Ods, Odp) from PDF with .NET PDF Library in C# Class.
www.rasteredge.com
software application dll:VB.NET PDF metadata library: add, remove, update PDF metadata in
VB.NET PDF - Read and Write PDF Metadata in VB.NET. Enable VB.NET Users to Read, Write, Edit, Delete and Update PDF Document Metadata in Visual Basic .NET.
www.rasteredge.com
The next example creates a 2x3 grid of subspaces. 
<FRAMESET rows="30%,70%" cols="33%,34%,33%">
...the rest of the definition...
</FRAMESET>
For the next example, suppose the browser window is currently 1000 pixels high. The first view is allotted
30% of the total height (300 pixels). The second view is specified to be exactly 400 pixels high. This
leaves 300 pixels to be divided between the other two frames. The fourth frame's height is specified as
"2*", so it is twice as high as the third frame, whose height is only "*" (equivalent to 1*). Therefore the
third frame will be 100 pixels high and the fourth will be 200 pixels high. 
<FRAMESET rows="30%,400,*,2*">
...the rest of the definition...
</FRAMESET>
Absolute lengths that do not sum to 100% of the real available space should be adjusted by the user agent.
When underspecified, remaining space should be allotted proportionally to each view. When
overspecified, each view should be reduced according to its specified proportion of the total space. 
Nested frame sets 
Framesets may be nested to any level. 
In the following example, the outer FRAMESET divides the available space into three equal columns. The
inner FRAMESET then divides the second area into two rows of unequal height. 
<FRAMESET cols="33%, 33%, 34%">
...contents of first frame...
<FRAMESET rows="40%, 50%">
...contents of second frame, first row...
...contents of second frame, second row...
</FRAMESET>
...contents of third frame...
</FRAMESET>
Sharing data among frames 
Authors may share data among several frames by including this data via an OBJECT element. Authors
should include the OBJECT element in the HEAD element of a frameset document and name it with the id
attribute. Any document that is the contents of a frame in the frameset may refer to this identifier. 
The following example illustrates how a script might refer to an OBJECT element defined for an entire
frameset: 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
"http://www.w3.org/TR/REC-html40/frameset.dtd">
<HTML>
<HEAD>
<TITLE>This is a frameset with OBJECT in the HEAD</TITLE>
<!-- This OBJECT is not rendered! -->
<OBJECT id="myobject" data="data.bar"></OBJECT>
196
16.2.1 The FRAMESET element
software application dll:VB.NET PDF Text Extract Library: extract text content from PDF
Enable extracting PDF text to another PDF file, and other formats such as TXT and SVG form. OCR text from scanned PDF by working with XImage.OCR SDK.
www.rasteredge.com
software application dll:C# PDF Text Extract Library: extract text content from PDF file in
Enable extracting PDF text to another PDF file, TXT and SVG formats. Support extracting OCR text from PDF by working with XImage.OCR SDK.
www.rasteredge.com
</HEAD>
<FRAMESET>
<FRAME src="bianca.html" name="bianca">
</FRAMESET>
</HTML>
<!-- In bianca.html -->
<HTML>
<HEAD>
<TITLE>Bianca's page</TITLE>
</HEAD>
<BODY>
...the beginning of the document...
<P>
<SCRIPT type="text/javascript">
parent.myobject.myproperty
</SCRIPT>
...the rest of the document...
</BODY>
</HTML>
16.2.2 The FRAME element
<![ %HTML.Frameset; [
<!-- reserved frame names start with "_" otherwise starts with letter -->
<!ELEMENT FRAME - O EMPTY              -- subwindow -->
<!ATTLIST FRAME
%coreattrs;                          -- id, class, style, title --
longdesc    %URI;          #IMPLIED  -- link to long description
(complements title) --
name        CDATA          #IMPLIED  -- name of frame for targetting --
src         %URI;          #IMPLIED  -- source of frame content --
frameborder (1|0)          1         -- request frame borders? --
marginwidth %Pixels;       #IMPLIED  -- margin widths in pixels --
marginheight %Pixels;      #IMPLIED  -- margin height in pixels --
noresize    (noresize)     #IMPLIED  -- allow users to resize frames? --
scrolling   (yes|no|auto)  auto      -- scrollbar or none --
>
]]>
Attribute definitions
name = cdata [p.44] [CI] [p.43] 
This attribute assigns a name to the current frame. This name may be used as the target of subsequent
links. 
longdesc = uri [p.44] [CT] [p.43] 
This attribute specifies a link to a long description of the frame. This description should supplement
the short description provided using the title attribute, and may be particularly useful for
non-visual user agents. 
src = uri [p.44] [CT] [p.43] 
This attribute specifies the location of the initial contents to be contained in the frame. 
197
16.2.2 The FRAME element
noresize [CI] [p.43] 
When present, this boolean attribute tells the user agent that the frame window must not be
resizeable. 
scrolling = auto|yes|no [CI] [p.43] 
This attribute specifies scroll information for the frame window. Possible values 
auto: This value tells the user agent to provide scrolling devices for the frame window when
necessary. This is the default value. 
yes: This value tells the user agent to always provide scrolling devices for the frame window. 
no: This value tells the user agent not to provide scrolling devices for the frame window.
frameborder = 1|0 [CN] [p.43] 
This attribute provides the user agent with information about the frame border. Possible values: 
1: This value tells the user agent to draw a separator between this frame and every adjoining
frame. This is the default value. 
0: This value tells the user agent not to draw a separator between this frame and every
adjoining frame. Note that separators may be drawn next to this frame nonetheless if specified
by other frames.
marginwidth = pixels [p.46] [CN] [p.43] 
This attribute specifies the amount of space to be left between the frame's contents in its left and
right margins. The value must be greater than one pixel. The default value depends on the user agent. 
marginheight = pixels [p.46] [CN] [p.43] 
This attribute specifies the amount of space to be left between the frame's contents in its top and
bottom margins. The value must be greater than one pixel. The default value depends on the user 
agent.
Attributes defined elsewhere 
id, class (document-wide identifiers [p.65] ) 
title (element title [p.57] ) 
style (inline style information [p.174] ) 
target (target frame information [p.200] )
The FRAME element defines the contents and appearance of a single frame. 
Setting the initial contents of a frame 
The src attribute specifies the initial document the frame will contain. 
The following example HTML document: 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
"http://www.w3.org/TR/REC-html40/frameset.dtd">
<HTML>
<HEAD>
<TITLE>A frameset document</TITLE>
</HEAD>
<FRAMESET cols="33%,33%,33%">
<FRAMESET rows="*,200">
<FRAME src="contents_of_frame1.html">
<FRAME src="contents_of_frame2.gif">
198
16.2.2 The FRAME element
</FRAMESET>
<FRAME src="contents_of_frame3.html">
<FRAME src="contents_of_frame4.html">
</FRAMESET>
</HTML>
should create a frame layout something like this: 
------------------------------------------
|Frame 1     |Frame 3       |Frame 4       |
|            |              |              |
|            |              |              |
|            |              |              |
|            |              |              |
|            |              |              |
|            |              |              |
|            |              |              |
-------------|              |              |
|Frame 2     |              |              |
|            |              |              |
|            |              |              |
------------------------------------------
and cause the user agent to load each file into a separate view. 
The contents of a frame must not be in the same document as the frame's definition. 
ILLEGAL EXAMPLE:
The following frameset definition is not legal HTML since the contents of the second frame are in the
same document as the frameset. 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
"http://www.w3.org/TR/REC-html40/frameset.dtd">
<HTML>
<HEAD>
<TITLE>A frameset document</TITLE>
</HEAD>
<FRAMESET cols="50%,50%">
<FRAME src="contents_of_frame1.html">
<FRAME src="#anchor_in_same_document">
<NOFRAMES>
...some text...
<H2><A name="anchor_in_same_document">Important section</A></H2>
...some text...
</NOFRAMES>
</FRAMESET>
</HTML>
Visual rendering of a frame 
The following example illustrates the usage of the decorative FRAME attributes. We specify that frame 1
will allow no scroll bars. Frame 2 will leave white space around its contents (initially, an image file) and
the frame will not be resizeable. No border will be drawn between frames 3 and 4. Borders will be drawn
(by default) between frames 1, 2, and 3. 
199
16.2.2 The FRAME element
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
"http://www.w3.org/TR/REC-html40/frameset.dtd">
<HTML>
<HEAD>
<TITLE>A frameset document</TITLE>
</HEAD>
<FRAMESET cols="33%,33%,33%">
<FRAMESET rows="*,200">
<FRAME src="contents_of_frame1.html" scrolling="no">
<FRAME src="contents_of_frame2.gif" 
marginwidth="10" marginheight="15"
noresize>
</FRAMESET>
<FRAME src="contents_of_frame3.html" frameborder="0">
<FRAME src="contents_of_frame4.html" frameborder="0">
</FRAMESET>
</HTML>
16.3 Specifying target frame information
Note. For information about current practice in determining the target of a frame, please consult the 
notes on frames [p.324] in the appendix. 
Attribute definitions
target = frame-target [p.51] [CI] [p.43] 
This attribute specifies the name of a frame where a document is to be opened.
By assigning a name to a frame via the name attribute, authors can refer to it as the "target" of links
defined by other elements. The target attribute may be set for elements that create links (A, LINK),
image maps (AREA), and forms (FORM). 
Please consult the section on target frame names [p.51] for information about recognized frame names. 
This example illustrates how targets allow the dynamic modification of a frame's contents. First we define
a frameset in the document frameset.html, shown here: 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"
"http://www.w3.org/TR/REC-html40/frameset.dtd">
<HTML>
<HEAD>
<TITLE>A frameset document</TITLE>
</HEAD>
<FRAMESET rows="50%,50%">
<FRAME name="fixed" src="init_fixed.html">
<FRAME name="dynamic" src="init_dynamic.html">
</FRAMESET>
</HTML>
Then, in init_dynamic.html, we link to the frame named "dynamic". 
200
16.3 Specifying target frame information
Documents you may be interested
Documents you may be interested