Albedo Systems


Albedo contact details: Albedo Systems Ltd; 268 Amhurst Road; Stoke Newington; London N16 7UP; t - 020 7923 2267; e - information@albedo.co.uk

Home pagePortfolio: clients and case studiesSite mapAlbedo contact detailsMiscellaneous writings and codeDownloadable softwareA few useful links

 


The price of frames


Frame-based sites were all the rage in the late 1990s. But in the light of modern approaches, we ask if using frames has any further point.



Back in 1996 - a date that seems like prehistory, but is less than a decade away as I am writing this - Netscape, who dominated the browser market at the time, launched their revolutionary Netscape 2 browser.

Netscape 2 was a huge leap in browser capability, because it introduced two new concepts that have remained with us ever since - JavaScript and frames. The two were tied together with an underlying 'glue' known as the 'document-object model'.

While JavaScript has proven its worth time and time again as a more-or-less simple way of adding interactivity to web pages - it, together with layer technology, is at the core of DHTML (Dynamic HTML) - the role of frames in building modern websites is, in our opinion, open to question.

Framing - the question


Why choose a frame-based solution? First of all - frames are simply a way of displaying several different web pages at once as separate windows within the overall browser window. Some of these can be more persistent than others - and they can influence each others' behaviour. The simplest and commonest example is a persistent navigation frame, where clicking on a button will cause new content to load into the main site frame.

In the light of this, it is plain to see that frames were greeted with delight, because they could reduce the maintenance burden on a website. Particularly in the mid-1990s, web authoring systems were pretty minimal. Changes on a large website could be pretty onerous, meaning plodding through page after page to make changes (although the brightest web developers were handy with search-and-replace). Frames allowed constant elements, like a navigation bar or a contact panel, to be abstracted out as one page, with the need for this to be altered only once.

Fear of scrolling


Secondly, frames seemed to offer a solution to something that still afflicts many web designers - 'fear of scrolling'. The idea is that, somehow, website users won't be able to navigate a site if the navigation bar scrolls away off the top of the screen. As it happens, we consider this an unjustified fear - user expectations now encompass the likelihood of navigation links doing this and users are unlikely to get lost as long as the navigation system is clear and usable. It is always a good idea, though, to enrich the site content with further crosslinks. Further, if a constantly 'on-screen' navigation menu is deemed to be absolutely necessary, this can now be achieved by using DHTML, so frames are unneeded.

Of course there's also the 'BILC' ('Because It Looks Cool') factor. And here's a mea culpa - we were as guilty of adopting frame-based solutions as any other web firm (though we did know how to use them). But it has to be admitted that we had our eyes, as ever, on ease of maintenance. And, if you are designing an art-based site, some of the effects you can get through frames are still impressive. But we would now look askance at any casual decision to use frames.

But, on the other hand...


There are special circumstances where frames can be much more convenient than non-framed solutions. If you are using the screen as a sort of 'console', a frame can be very useful as a sort of control panel that determines the content of the main frame. The control panel frame can be used to retain form settings that determine the main content. A very crude example of this is our Javascript database example. In fact, this could almost as easily have been done without framing, but if there were many more options including, for example, graphic sliders, it is less unwieldy to frame the page.

Pear-shaped sites


Use of frames started to go wrong very quickly. Some designers took to using frames as normal layout elements, just as you would do with the standard elements, such as tables, in HTML. An example would be the creation of a 'floating' content box, held in the centre of the browser window by the surrounding frames.

This sort of use of frames is, in our view, unnecessary and a mistake. It is one of many attempts that some 'web designers' continue to make, aimed at taking control of the user's browsing experience. Invariably, these sort of sites would prove failures at some screen sizes and resolutions and would prove incompatible with some browsers.

If you really must...


What is quite inexcusable, and this persists to the modern day, is the sloppy approach to site coding and structuring that use of frames has often encouraged. Frames do not have to be totally unusable and inaccessible - here are some common mistakes and how to fix them.

But to sum up, we would not now consider the use of frames except in quite special circumstances. But if you are a web designer or are hiring a web designer and frames are deemed to be absolutely necessary, be sure they are used properly.

| Home | Folio | Sitemap | Contact |
| Texts | Downloads | Web links |

Page last modified: 07 Aug 2005

Valid HTML 4.01!