<!-- Create two frames that take up half the screen each, and one that --> <!-- takes up "all the rest" of the room. The third frame will be --> <!-- invisible, because it has a height of zero. --> <frameset rows="50%,50%,*"> <!-- first two frames start out empty, loading no documents --> <frame name="dynamic_frame_1"> <frame name="dynamic_frame_2"> <!-- invisible frame contains the code that will --> <!-- dynamically update the others --> <frame name="invisible_frame" src="program.html"> </frameset>
A technique related to dynamically generating frame content is the use of the TARGET attribute of <A>, <AREA>, and <FORM> tags. This attribute was discussed in the last chapter--it directs the browser to load the URL pointed to by a hyperlink into the named frame or window, or to load the results of form submission into the named frame. This, too, is a very useful way to change the contents of one frame from another frame.
Another HTML technique that is possible with frames in Navigator 3.0 is creating borderless frames. A borderless frame is visible to the user but its border is not. You can use borderless frames when you want an region of the screen that can display HTML content independently of the rest of the page, but which fits "seamlessly" with its neighboring frames. You can create borderless frames with attributes like those shown here. Note that the entire frameset must be borderless, since if one frame is borderless, its adjoining neighbors must be borderless, too:
<frameset border=no width=0 rows="10%,*"> <frame name="banner" src="ad.html"> <frame name="main" src="content.html"> </frameset>