Tutorial 14: You've been Framed, Part I - HTML with Style | 3
Tutorial 14: You've been Framed, Part I
The structure of a frameset document
Frameset documents are very similar to normal HTML documents, with one exception: instead of a BODY element, they have a FRAMESET element. A FRAMESET element defines a frameset, which basically is a division of the viewing area into rectangular components.
The FRAMESET element
- Context:
- Can only appear inside an HTML element of a frameset document, immediately following the HEAD element, or inside another FRAMESET element.
- Contents:
- Can contain one or more FRAMESET or FRAME elements; may also contain a NOFRAMES element.
- Tags:
- Both the start-tag and end-tag are required.
Attributes for the FRAMESET element
- cols (Multilength List)
- If present, specifies that the frameset is split into columns, the widths of which are defined by the value of the attribute. Only one of the ROWS and COLS attributes may be present.
- rows (Multilength List)
- If present, specifies that the frameset is split into rows, the heights of which are defined by the value of the attribute. Only one of the ROWS and COLS attributes may be present.
- Identifier and classification attributes
- Title attribute
- Inline style information attribute
- Intrinsic event handler attributes
The ROWS and COLS attributes accept a list of multilengths. We discussed multilengths in Tutorial 11, when we saw their use in defining column widths. In this case, the values of the ROWS and COLS attributes are a list of multi-lengths, separated by commas. This is best illustrated by an example such as the following:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN" "https://www.w3.org/TR/REC-html40/frameset.dtd"> <HTML> <HEAD> <TITLE>My frameset document</TITLE> </HEAD> <FRAMESET ROWS="30%,40%,*"> ... frameset contents ... </FRAMESET> </HTML>
This will create a frameset split into 3 rows: One taking up 30% of the total height, the second one taking up 40% of the total height, and the third taking up any space remaining. Note that no current browser supports the multi-length syntax of a number followed by an asterisk (such as 1*, 2*, 3* etc.). In general, it's best to stick with percentages for multi-lengths, and occasionally use a pixel value if it's needed (for instance if you want to fit an image of exact pixel dimensions into a frame).
After you've split the browser's viewport into rows or columns, you can do one of two things: you can either split a column or row into further rows and columns, or you can make that area a frame.
URL: https://www.webreference.com/html/tutorial14/2.html
Produced by Stephanos Piperoglou
Created: June 30, 1999
Revised: June 30, 1999