Many of the posts on Web development bulletin boards and forums concern problems with frames. Another developer once told us that the reason there are so many reports of problems with frames is that professionals avoid using frames and the amateurs who use them don't know how to use them correctly. We're not sure that is true, but what is clear is that the use of frames causes problems for many people -- both developers and visitors.
The old maxim, "Use frames only if they fill a purpose that can't be addressed adequately by other methods," is no longer applicable. Today, frames can be simulated using CSS. A typical frameset loads four separate HTML pages: a header, navigation, footer, and the main content. The header, navigation and footer stay on screen at all times and the content area can be scrolled. This page demonstrates how a similar page layout can be developed using a single XHTML page and CSS. It is pure CSS; there is no JavaScript other than the DHTMLMenu, and the page validates as XHTML 1.0 Transitional.
The menu to the left is a Sothink DHTMLMenu. It was generated using one of the templates that is included with Version 7. It is not a cross-frame menu, but notice that the flyout submenus overlay the content area without a problem.
The rest of this page is filler text so that the content will scroll at higher resolutions.
Sed do eiusmod tempor incididunt ullamco laboris nisi eu fugiat nulla pariatur. In reprehenderit in voluptate ut aliquip ex ea commodo consequat. Cupidatat non proident, mollit anim id est laborum. Sunt in culpa quis nostrud exercitation ut labore et dolore magna aliqua. Velit esse cillum dolore cupidatat non proident, mollit anim id est laborum.
In reprehenderit in voluptate duis aute irure dolor eu fugiat nulla pariatur. Ullamco laboris nisi. Eu fugiat nulla pariatur. In reprehenderit in voluptate ut labore et dolore magna aliqua.
Sunt in culpa ut aliquip ex ea commodo consequat. Lorem ipsum dolor sit amet, qui officia deserunt in reprehenderit in voluptate. Velit esse cillum dolore consectetur adipisicing elit, cupidatat non proident. Duis aute irure dolor lorem ipsum dolor sit amet, sunt in culpa. Sed do eiusmod tempor incididunt consectetur adipisicing elit, ullamco laboris nisi.
Eu fugiat nulla pariatur. Ut aliquip ex ea commodo consequat. Duis aute irure dolor consectetur adipisicing elit, qui officia deserunt. Cupidatat non proident, velit esse cillum dolore ut aliquip ex ea commodo consequat.
