The Deprecated <frameset> Tag
In the late 90s and early 2000s, web developers used framesets to divide browser windows into multiple sections. The <frameset> tag was the container that replaced the entire <body> element and divided the page into frames.
What did it do?
The <frameset> tag replaced the <body> element entirely and divided the browser window into multiple sections using cols (columns) or rows attributes. Each section contained a <frame> tag that displayed a different HTML document. This structure made it impossible to have normal HTML content alongside frames.
Why is it gone?
Framesets had several major problems: they completely replaced the body element, broke browser navigation (back/forward buttons), made bookmarking difficult, caused severe accessibility issues, and didn't work well on mobile devices. CSS Grid, Flexbox, and <iframe> were introduced as better alternatives that work within normal HTML documents. Consequently, <frameset> and <frame> were deprecated in HTML5.
The Modern Alternative
Today, you should use CSS Grid or Flexbox for layouts, and <iframe> for embedded content:
<div style="display: grid; grid-template-columns: 1fr 1fr;"><iframe src="left.html"></iframe><iframe src="right.html"></iframe></div>Modern layouts work within normal HTML documents, support responsive design, and don't break navigation or bookmarking.
