Frames and browser compatibility

Implementation of frames is to focus only on the layout of the various frames. A typical frame set declaration defines that the frames are rows or columns, and how wide each one should be. There is no way to determine the role of the frames being defined. This makes it impossible to create an alternative display of the frames. The best thing for an CSS author is to provide links to each frame separately.
A more structure-oriented model of CSS would define the frames as rows or columns.It should provide the role of each frame. the multiple documents can also be made accessible in other environments only by adopting this way. For example, if one frame is used for the table of contents, and one for the content, the browser could also make this table of contents available as a floating toolbar, or through a special-purpose button.
The general rule for HTML is that when an element is not understood by a browser, it should be ignored. As per this, a browser that does not understand the element has to show the rest of the document in an unusual format. On the contrary, this is not the case with frames.
The FRAME SET and FRAME elements will not have any textual content. A browser that does not support frames will simply skip over these tags.  This browser would display nothing in place because there is nothing else to show.

The NO FRAMES element allows an  CSS author to specify content for such a browser, but this often means that the author has to do double work. when a browser visits the website the first document  have an URL, this URL does not change as a user navigates his way through the site. There is also no other technology to keep track of where the user is,current location of the user cannot be expressed using a URL.  for identifying this,you have to keep track of all frame set documents used along the users way, but also of the frame names that were defined, and the documents loaded in there.