Frames vs. Master Pages

M

M.Siler

Let me first by saying I am NOT a .net programmer, but am very skilled with
ASP, JavaScript, HTML, DHTML, Flash development.

I've been reading through posts here about Frames vs. Master Pages and there
seems to be the thought of why use Frames when you can use a Master Page?
How does a Master Page only update a section without re-displaying the
entire page. We have a site that has some small swf banners for lack of a
better term that we don't want to have their internal clock reset and to
start over each time a link is clicked on the master page and it's
re-displayed (aka refreshed).

Also, we have a title bar at the top, menu on the left and bottom bar with
copyright, privacy policy, etc. None of these will change or need to be
updated. If I was using frames I would only update the "Main" frame with the
content. If you use a Master Page, won't all these sections, top bar, menu
on the left, and bottom bar have to be re-drawn/refreshed/re-displayed
(whatever you'd like to call it) each time a link is clicked.

Sorry if I'm asking dumb questions, but I've always considered the *proper*
uses of frames a powerful feature to have a site fast for people who have a
slow connection.
 
K

Kevin Spencer

A Master Page does *not* refresh a section withnout loading the entire page.
The reason why Frames are generally discouraged is that Session State is
hard to manage with Frames. Depending upon the browser, each Frame may have
its own Session, and coordinating them client and server-side can be
problematic. Master Pages provide a way to keep a formatting theme and
content consistent throughout your pages without having to duplicate it for
each page. But each page loads all of the HTML in the MasterPage when it's
accessed.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
You can lead a fish to a bicycle,
but it takes a very long time,
and the bicycle has to *want* to change.
 
D

darrel

I've been reading through posts here about Frames vs. Master Pages and
there seems to be the thought of why use Frames when you can use a Master
Page?

Why use Frames ever?
How does a Master Page only update a section without re-displaying the
entire page.

For the most part, that shouldn't ever be a problem. That's how the web
normally works.

Frames are bad for a variety of reasons. They can be useful in certain
instances, but really, they cause more problems than solve most of the time.
We have a site that has some small swf banners for lack of a better term
that we don't want to have their internal clock reset and to start over
each time a link is clicked on the master page and it's re-displayed (aka
refreshed).

Use cookies and some server-side scripting to communicate with the SWF file
to NOT repeat the animation if it's already played.
Also, we have a title bar at the top, menu on the left and bottom bar with
copyright, privacy policy, etc. None of these will change or need to be
updated.

Use server side includes,or web controls.
Sorry if I'm asking dumb questions, but I've always considered the
*proper* uses of frames a powerful feature to have a site fast for people
who have a slow connection.

It's a bad feature. Causes problems with bookmarking, navigating with the
back button, can cause accessibility issues, search engine ranking issues,
etc.

To implement frames 'properly' one must use a lot of client side and/or
server side scripting to overcome the problems and, at that point, one
realized that frames really add no benefit to begin with.

-Darrel
 
G

Guest

Why use Frames ever?

Mix and match internal/external content. There are some uses of Frames : )

For the most part, that shouldn't ever be a problem. That's how the
web normally works.

There are situations where parts of the page need to be refreshed -
otherwise there wouldn't be technology like Client-Side Postbacks or AJAX.
 
D

darrel

Mix and match internal/external content. There are some uses of Frames : )

Yes. To be fair, there certainly are uses for frames and iframes. However,
most of the time Frames are implemented for the wrong reasons. ;o)
There are situations where parts of the page need to be refreshed -
otherwise there wouldn't be technology like Client-Side Postbacks or AJAX.

Frames aren't 'part of a page'. Frames are pages themselves. A frameset is a
combination of separate frames.

AJAX is designed to update data on a page without the mess of having to
split your page into individual segments and arrange them via a frameset.

-Darrel
 
M

m.posseth

In my opinion frames are much better for the advanced HTML coder

try to get a page like this working with master pages on a 56k6 modem
connection

http://www.tireponline.de ( enter as a visitor )


regards

Michel Posseth [MCP]
 
M

M.Siler

For the most part, that shouldn't ever be a problem. That's how the web
normally works.

For people without broadband reloading the same menu, the same header
graphic, regardless of the caching of the images, still is slow and caused
the entire page to "blink" as the old page is cleared and the new one is
drawn.
Use cookies and some server-side scripting to communicate with the SWF
file to NOT repeat the animation if it's already played.

With frames the SWF files are loaded on their own page and that's that....
Done. No cookies. No server-side scripting to communicate with the SWF
files.
Use server side includes,or web controls.

We use Infragistcs NetAdvantage 2005 for .NET 2.0
It's a bad feature. Causes problems with bookmarking, navigating with the
back button, can cause accessibility issues, search engine ranking issues,
etc.

I guess there are sometime you don't care if people bookmark any old page on
your site, but I prefer to control which pages are bookmarked. Minimizes 404
errors. In the same vain, I don't want search engine bots indexing an page
on my site. I prefer to control which pages, meta tag, etc. it sees. You
can make those same arguments about Flash sites.



I can't image you saying that it has no benefit. I think that people have
very poorly implemented them and it has given users a bad experience. I have
*always* gotten kudos about how fast my sites are and they always use
frames. If done well the user shouldn't know the site is using frames.
 
G

George

From my experience if possible you should try to avoid the Frames.
To many problems with them. But i am not saying that you should always avoid them. Sometimes their are very viable solution.


The biggest problem with them is the "Search" if you have your own search or user found your site on internet then chances are that he will get to the page directly without your FRAME. And then there will be no navigation controls (or whatever you had in FRAME).


Plus hard to maintain. Once i had done the site with FRAMES and customer suddenly wanted the menu to reflect what page customer is looking at. Had to redo the whole project without frames.

George.
 
D

darrel

For people without broadband reloading the same menu, the same header
graphic, regardless of the caching of the images, still is slow and caused
the entire page to "blink" as the old page is cleared and the new one is
drawn.

the 'blink' is normal. again, how the web works.

As far as downloading, all images and external files are cached, so that's
negligible as well, and doesn't outweigh the drawbacks most of the time.
With frames the SWF files are loaded on their own page and that's that....
Done. No cookies. No server-side scripting to communicate with the SWF
files.

Yep, just lots of annoying and unusable frames. (granted, the end-user
probably doesn't care to see the animated SWF either, but that's another
issue... ;o)
We use Infragistcs NetAdvantage 2005 for .NET 2.0
OK.

I guess there are sometime you don't care if people bookmark any old page
on your site, but I prefer to control which pages are bookmarked.

I, as a web user, could care less what you prefer. I'm the one viewing the
site in my web browser on my computer. I can control these things and frames
just get in the way of that.

Frames, more often than not, will frustrate your customers, not help them.
Minimizes 404 errors.
Huh?

In the same vain, I don't want search engine bots indexing an page on my
site.

Most folks would like google to find their site.
I prefer to control which pages, meta tag, etc. it sees. You can make
those same arguments about Flash sites.

Yep. Doesn't invalidate the arguments against frames, though.
I can't image you saying that it has no benefit. I think that people have
very poorly implemented them and it has given users a bad experience.

Like I said, they do have SOME benefits in SOME cases. But, yes, 99% of the
time they are implemented poorly.
If done well the user shouldn't know the site is using frames.

To do frames 'well' requires a lot of server and client side scripting, at
which point, one has to ask what benefit they are actually getting from the
frames.

-Darrel
 
M

M.Siler

With a *little* ASP code the menu page can display which page is loaded in the main area.
From my experience if possible you should try to avoid the Frames.
To many problems with them. But i am not saying that you should always avoid them. Sometimes their are very viable solution.


The biggest problem with them is the "Search" if you have your own search or user found your site on internet then chances are that he will get to the page directly without your FRAME. And then there will be no navigation controls (or whatever you had in FRAME).


Plus hard to maintain. Once i had done the site with FRAMES and customer suddenly wanted the menu to reflect what page customer is looking at. Had to redo the whole project without frames.

George.
 
D

darrel

try to get a page like this working with master pages on a 56k6 modem
connection

Fun. Frames AND pop-up windows. What a joy.

Anyways, looks like you've built a nice web application. This is an instance
where frames may very well be useful.

-Darrel
 
D

darrel

With a *little* ASP code the menu page can display which page is loaded in the main area.

The problem is that to fix all the drawbacks to frames, one must use a lot of 'little asp here, little javascript there'.

The argument for not having to reload the menus isn't much of an argument, as browser caching will take care of any speed issues.

The flash banner is a bit of an argument, though I'd ask yourself how important that flash banner is to begin with. Again, if you are doing a 'little asp' anyways, then do a little asp to handle communicating with the SWF file and then you won't have to worry about all the frames issues.

As with most web technology decisions, you can make the decision to make it easier on you as the developer, or easier on your customers/audience. Frames tend to make it easier (at first glance) for the developer and rarely make it easier for the end user.

-Darrel
 
M

M.Siler

the 'blink' is normal. again, how the web works.

Doesn't have to.
Frames, more often than not, will frustrate your customers, not help them.

Agreed, if done poorly. If done correctly, they won't even know.

Every bookmarked a page and later returned to only get a 404 becuase the
page was removed. Oh, I forgot, you don't care as you are the user and want
to be in control.
Most folks would like google to find their site.

Yep and they ALWAY find mine. And when you find it in Google it won't link
to a page that is missing, you know that 404 thing... I control what pages
Google and others see, not just an page on my site the day they came by to
index it.
 
M

M.Siler

Didn't you just state that you could write a little server side script to talk to the SWF files and write a few cookies, to over come some of the problems with a Master Page that don't exist with Frames. Why does it have to be one or the other... can you use frames, when appropriate and ASP.NET?

darrel said:
With a *little* ASP code the menu page can display which page is loaded in the main area.

The problem is that to fix all the drawbacks to frames, one must use a lot of 'little asp here, little javascript there'.

The argument for not having to reload the menus isn't much of an argument, as browser caching will take care of any speed issues.

The flash banner is a bit of an argument, though I'd ask yourself how important that flash banner is to begin with. Again, if you are doing a 'little asp' anyways, then do a little asp to handle communicating with the SWF file and then you won't have to worry about all the frames issues.

As with most web technology decisions, you can make the decision to make it easier on you as the developer, or easier on your customers/audience. Frames tend to make it easier (at first glance) for the developer and rarely make it easier for the end user.

-Darrel
 
M

M.Siler

I think I got my answer... they both have there place and hopefully people will know how and when to use them, either alone or in combination.
Didn't you just state that you could write a little server side script to talk to the SWF files and write a few cookies, to over come some of the problems with a Master Page that don't exist with Frames. Why does it have to be one or the other... can you use frames, when appropriate and ASP.NET?

darrel said:
With a *little* ASP code the menu page can display which page is loaded in the main area.

The problem is that to fix all the drawbacks to frames, one must use a lot of 'little asp here, little javascript there'.

The argument for not having to reload the menus isn't much of an argument, as browser caching will take care of any speed issues.

The flash banner is a bit of an argument, though I'd ask yourself how important that flash banner is to begin with. Again, if you are doing a 'little asp' anyways, then do a little asp to handle communicating with the SWF file and then you won't have to worry about all the frames issues.

As with most web technology decisions, you can make the decision to make it easier on you as the developer, or easier on your customers/audience. Frames tend to make it easier (at first glance) for the developer and rarely make it easier for the end user.

-Darrel
 
D

darrel

can you use frames, when appropriate and ASP.NET?

Sure. You can use them when they're not appropriate either. ;o)

As stated, Frames just add more confusion most of the time rather than
tangible benefits, though.

-Darrel
 
D

darrel

the 'blink' is normal. again, how the web works.
Doesn't have to.

But it's perfectly acceptable and actually beneficial at times (the whole
concept of .net's postback)
Every bookmarked a page and later returned to only get a 404 becuase the
page was removed. Oh, I forgot, you don't care as you are the user and
want to be in control.

Of course I care, but that has absolutely nothing to do with frames of lack
thereof.

-Darrel
 
D

darrel

Thank you Darrel for confirming that if used properly frames have a place.

They do. 'not reloading the menu' or 'not repeating a flash banner' are
likely NOT the place for frames, though ;o)

Frames really only have a place where there is client interaction with data
that needs to be updated piecemeal. They can also be somewhat useful in deep
documentation, like online help.

-Darrel
 
S

Skippy

Ick - it tells me I have to disable my popup blocker.

Very nice site, but I am not sure what the benefit is of popping up another
window to run the app. Microsoft CRM does this and it has wasted a lot of
people's time until they figure out that they have to disable their popup
blocker.

I agree with the advantages of using frames but I think that a public site
that tells you how you have to configure your browser is not good design.


m.posseth said:
In my opinion frames are much better for the advanced HTML coder

try to get a page like this working with master pages on a 56k6 modem
connection

http://www.tireponline.de ( enter as a visitor )


regards

Michel Posseth [MCP]




M.Siler said:
Let me first by saying I am NOT a .net programmer, but am very skilled
with ASP, JavaScript, HTML, DHTML, Flash development.

I've been reading through posts here about Frames vs. Master Pages and
there seems to be the thought of why use Frames when you can use a Master
Page? How does a Master Page only update a section without re-displaying
the entire page. We have a site that has some small swf banners for lack
of a better term that we don't want to have their internal clock reset
and to start over each time a link is clicked on the master page and it's
re-displayed (aka refreshed).

Also, we have a title bar at the top, menu on the left and bottom bar
with copyright, privacy policy, etc. None of these will change or need to
be updated. If I was using frames I would only update the "Main" frame
with the content. If you use a Master Page, won't all these sections,
top bar, menu on the left, and bottom bar have to be
re-drawn/refreshed/re-displayed (whatever you'd like to call it) each
time a link is clicked.

Sorry if I'm asking dumb questions, but I've always considered the
*proper* uses of frames a powerful feature to have a site fast for people
who have a slow connection.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Members online

Forum statistics

Threads
473,968
Messages
2,570,150
Members
46,696
Latest member
BarbraOLog

Latest Threads

Top