An HTML layout feature that renders multiple documents (HTML files) on a Web page at the same time. Frames are used on websites similar to the way applications display multiple windows. It enables static data to be visible all the time while other data are scrolled. For example, a menu can be located at the top of the page with links to articles below. The articles can be scrolled without changing the position of the menu on the page.
The frame may contain content from a different site, just like links on websites can retrieve Web pages from any server. Frames automatically provide scroll bars if the content is larger than the frame window.
A Contentious Feature
Frames have been controversial since day one on the Web. Earlier browsers did not render frames the same or perhaps not at all, which is why framed sites typically offer a "no-frames" version. Users cannot always bookmark a frame, and clicking the browser's Back and Forward buttons may not move the content in the frame you want.
Frames can also point to an HTML document on any third-party server and give the appearance that the content is coming from the same site. This enables content to be easily aggregated, but also lets third-party content be stolen from another site unless precautions are taken on that site (see framekiller
In addition, frames may be avoided by the Web developer because search engines may not index the content correctly. Frames are also not that friendly to audio browsers for the visually impaired (see audio browser
). See frameset
The HTML frames feature is used to partition the page into windows, and the content within a window can be scrollable or static. The iFrame is an independent HTML frame that can be placed anywhere on the page just like text and graphics. If the iFrame is in a scrollable frame, then it would scroll off screen like any other objects on the page.