Scrolling and Other Stuff

By W3C standard the only attributes of the frameset tag are rows and cols. All other attributes are assigned to the frame tag. There are, however, some other attributes that you can use to enhance appearance and improve 'cross browser' performance.

Scrolling

The scrolling function of a frame window is set using the scrolling attribute which is added to the frame tag. For a better appearance you won't want all of your windows to display scroll bars.

Using this website as an example, the middle and right frame windows are the only ones that specify scrolling.

The values for the attribute are: yes, no and auto. (Default is auto )

The code is shown below:
<frame name="right-frame" scrolling="auto">

Frame Border

By W3C standards the frameborder attribute is assigned to the frame tag.

If you want consistent performance from browser to browser it's best used with the frameset tag. (This practice is not W3C compliant.)

Borders on your frame windows are a matter of preference. I don't like the clunky looking default borders that go with the territory, but you should experiment with adding and removing them and decide for yourself.

The values for frameborder are: yes, no, 1 and 0. The code is shown below:
<frameset frameborder="no">

If you want the default frameborders just omit the attribute completely.

The IE browser allows you to adjust the width of the frameborder using the framespacing attribute. Mozilla will just ignore it.

Note: If you try to use frameborders in compliance with the W3C standard, be sure to check your site in both IE and Mozilla browsers.

Frame Margins

Other attributes that you can experiment with are the marginwidth and marginheight. I recommend setting them to zero and setting your margins in your source documents. These attributes are set in the frame tag. The code is shown below:
<frame marginheight="0" marginwidth="0">

Once again, these settings are a matter of preference. Experiment and decide for yourself. Measurements are set in pixels.

Noresize

I include this attribute of the frame tag, just for your information. The noresize attribute pertains to and is only recognized by the IE browser.

If someone using an IE browser visits your website they can actually grab the sides of a window frame and close it or stretch it out.

If you want to turn off this option for IE viewers, add the noresize attribute to the frame tag. the code is shown below:
<frame marginheight="0" marginwidth="0" noresize>
You don't need to add it to every frame. Just add it to one frame that has a common edge with all of the other frames. On this website it would be added to the middle-frame.

Other Attributes You Can Use

framespacing
(This attribute has been deprecated by the W3C)
You can still use it to close the gaps on your designs if you remove your frameborders, but your web pages will not Validate at the W3C.

The attribute can be used with the frameset tag to close the gap between frame windows on an IE browser. It is used in conjunction with the non-standard use of the frameborder="0" attribute with the frameset tag. ( When used, it will not affect performance of the Mozilla browser )
<frameset frameborder="0" framespacing="0">

The practice of setting the width of your frameborder as shown here:
<frameset frameborder="1" framespacing="12">
is not recognized by Mozilla.

style An inline style tag can be used to add borders to the main frameset tag in both IE and Mozilla. Both IE and Mozilla accept the inline style tag in the frame tag, but there are too many quirks to make it worth the effort.

This code though not W3C compliant will remove borders and close gaps on IE and Mozilla browsers:
<frameset border="0" frameborder="0" framespacing="0">

It should only be used by rebels and 'lone wolves'!