HTML Tutorial: Complete HTML Tutorial
About Lesson

HTML <frameset> Tag


The <frameset> tag was used to hold a collection of <frame> elements, essentially dividing the browser window into multiple sections, each capable of displaying its own HTML document. This was a popular method for creating multi-panel layouts, especially for navigation menus.

However, the <frameset> tag is not supported in HTML5 and is considered obsolete. Modern web design has moved towards more flexible and accessible layout methods like CSS Grid and Flexbox.



Sponsored by Google

Example 1: Basic Frameset Layout

Here’s how a basic frameset layout might have looked:

<frameset cols="25%,75%">
  <frame src="menu.html">
  <frame src="content.html">
Example 2: Complex Frameset Layout

For more complex layouts, you could nest framesets:

<frameset rows="50%,50%">
  <frameset cols="30%,70%">
    <frame src="header.html">
    <frame src="menu.html">
  <frame src="content.html">

Attributes Table

Attribute Description
cols Specifies the width of columns in the frameset
rows Specifies the height of rows in the frameset

Global Attributes

The <frameset> tag does not support global attributes as it’s obsolete.

Event Attributes

The <frameset> tag also does not support event attributes.

Browser Support Table

Browser Support
Chrome No
Firefox No
Safari No
Opera No
IE Limited

Default CSS Settings

Since the <frameset> tag is obsolete, there are no default CSS settings for modern browsers.


The <frameset> tag, like its <frame> counterpart, is a relic from the early days of web development. It’s not recommended for use in modern web projects, but you might still encounter it in legacy code.

Understanding its historical context can give you a better appreciation for how far web development has come.