Using Frames with Microsoft Expression Web 4
- Feb 17, 2011
Using Frames in Sites
HTML frames have been around for quite a while. A frames page is a page that is segmented into two or more sections called frames. Each frame contains a separate page and can be configured with scrollbars and a frame border that can be either fixed or resizable.
If you've spent any amount of time discussing web design with other web designers, you've no doubt encountered what I call the "never use it" mentality. Web designers with this mentality maintain a list of design techniques they claim should never be used under any circumstance. The use of frames is a technique that appears on many of those lists, but as with any technique, frames do have some effective uses. The trick is in knowing when to use them.
When to Use Frames
One of the most common uses of frames is in separating navigation elements from other page content, especially when the navigation components require scrolling. The benefit of using frames in such setups is that you can scroll the page containing the navigation elements without scrolling the page containing the main content.
Modern sites will opt for using CSS for these scenarios because the use of frames can cause accessibility issues and problems with search engine indexing. However, not all HTML pages are designed to be used on the Internet. For example, some software discs contain HTML-based documentation that is designed to be viewed locally. The use of frames in this type of situation is fine. It's also not uncommon to see frames used when creating HTML help documentation.
When Not to Use Frames
It's generally a good idea to avoid the use of frames for sites that will be hosted on the Internet. The following are some of the drawbacks of frames:
- Search engines often index pages that are part of a frameset—When that happens, search results can link to pages that don't include your navigation or other important page elements.
- They might not render the same way on all computers—Frames include window elements such as scrollbars that aren't always the same size in every browser, thereby causing rendering problems in some cases.
- When a frames page links to another frames page, you end up with nested frames—This can be extremely frustrating for users of your site.
You must also take into account that the text size in browsers can be (and often is) adjusted by users with low vision and for other reasons. If your frames are designed for text of a certain size and a site visitor alters the text size in the browser, it can modify your site's layout in unpredictable ways.
Now that you know when it's okay to use frames and when you should probably opt for another technique, let's talk about how to create frames pages in Expression Web.