[MGFRANZ] Some HTML Frame Questions

How do you do borderless frames in HTML for IE4?? can do it ok in netscape...

How do you set so when a user visits certain HTML pages from within a frame... the frame disapears so they get it as a full page without the frames following...

Thanks
BTW After my last experience.. I figured I'd give you first right of reply

LVL 1
MAVERICKAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

aarieCommented:
To start with your first question:

All you need to add in your frameset definition is:
<frame name="..." src="..." border=0>

make sure the border=0 part is added to all frames...

the second question;
when you have a link on your page, which needs to be shown in the entire browser, you need to add a target attribute, like this:

<a href="mylink.html" target="_top">open my link</a>

Arjan.
0
mgfranzCommented:
Thanks aarie...  I didn't know you were filling in for me.  How about you fill in for me on my next audit.

Back to the question though, aside from the 'border=0' statement, there are other tags to think of when laying out framesets, like 'marginwidth' and 'marginheight'.  And in IE, it's 'frameborder' not border, although border will work in some browsers.  It is better to use 'frameborder=no' and 'marginxxx=0' for cross browser compatability.

For the second question, the answer as you requested is a 'target' issue, but do you want to open a new window or just pop out of a frameset?  _top will break out of frames, _blank will create a new window, _parent will use the existing frame the document belongs to and _self will load in the current frame window.

And Mav, thanks for being an honest person.
0
MAVERICKAuthor Commented:
I want the target to be in the same window.... thanks

aarie.... the reason why I gave mgfranz  "first right of reply " is on a recent difficult question... I rejected his answer (which was basically correct) and accepted a different one because it looked correct... but had browser compadibilty problems!!!

0
Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

aarieCommented:
Sorry about that....
btw, it should indeed be frameborder...
my mistake there...

Mav, if you want you can give the points to mgfranz.. after all, he had first right and even needed to correct my mistake on the border thingie...

Arjan.
0
mgfranzCommented:
Mav,

If you want the new page link to open in the same frame, use the _self option;

<A HREF="link.htm" target="_self">link</A>

Mark
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
mgfranzCommented:
Oh, and dont forget the other frameset options;

bordercolor (IE, NN)
cols (IE, NN) (% or pixels)
rows (IE, NN) (% or pixels)
framespacing (IE)
H1, H2, H3, H4, H5, H6 (IE)

the <FRAME> element can be expanded also;

bordercolor (NN, IE)
datafield (IE)
datasrc (IE)
height, width (IE)
marginwidth, marginheight (IE)
noresize, scrolling (NN, IE)
src (NN, IE)

0
mgfranzCommented:
Did you get this working?
0
MAVERICKAuthor Commented:
basically....not really... in IE3 I still have a border its just thinner...
here's the current code...

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN//3.2">

<HTML>
<HEAD>
      <TITLE>project18a</TITLE>
</HEAD>
<FRAMESET ROWS="22%,*,17%"  FRAMEBORDER="no"  >
      <FRAME NAME="header" SRC="project17e.htm" SCROLLING="No" FRAMEBORDER="NO" MARGINHEIGHT="0" MARGINWIDTH="0">
      <FRAME NAME="FRAME2" SRC="project13c.htm" SCROLLING="AUTO" FRAMEBORDER="NO" MARGINHEIGHT="0" MARGINWIDTH="0">
      <FRAME NAME="footer" SRC="project17f.htm" SCROLLING="NO" FRAMEBORDER="NO" MARGINHEIGHT="0" MARGINWIDTH="0" >
</FRAMESET>

</HTML>

0
mgfranzCommented:
There is going to be a border no matter what, you are going to have to play with the border colors of the specific frame tags.  For a black border on Project17e.htm;

<FRAME NAME="header" SRC="project17e.htm" SCROLLING="No" FRAMEBORDER="NO" MARGINHEIGHT="0" MARGINWIDTH="0" BORDERCOLOR="#000000">
0
MAVERICKAuthor Commented:
mgfranz ... do you know much about perl??
0
mgfranzCommented:
A bit... why?

mgfranz@pe.net
0
MAVERICKAuthor Commented:
I still end up with a grey border... BTW for testing I'm using IE3.0
0
mgfranzCommented:
This could be an inherent function of 3.0, try it with NN3.0 and the 4.0 browsers.  I don't have my books with me here at home, but I'll check them tomorrow.  I'll let you know in my email reply.

Mark
0
DreamMasterCommented:
ok...here's a clue...

Netscape and IE use different tags for this and they both don't watch the others, to really get no frameborders, add the following...

FRAMEBORDER="no" BORDER="0" FRAMESPACING="0"

All of these combined will kill Your frame borders...

maybe that helps?
0
DreamMasterCommented:
oh...and to open the page in the same frame..You don't need to use a target attribute....default is the same frame...
0
MAVERICKAuthor Commented:
I see... DreamMaster... I'll check it out...
0
mgfranzCommented:
As I mentioned previously, the frameborder is IE only, Border is fine for IE4> and NN3>, Framespacing is IE3> only.  Even so, you should still assign a border color to your framesets that matches backgrounds.

Anyway, here is the fix;

<HTML>
<HEAD>
<TITLE>project18a</TITLE>
</HEAD>
<FRAMESET ROWS="22%,*,17%"  FRAMEBORDER="no" border="0" > 
<FRAME NAME="header" SRC="project17e.htm" SCROLLING="No" MARGINHEIGHT="0" MARGINWIDTH="0">
<FRAME NAME="FRAME2" SRC="project13c.htm" SCROLLING="AUTO" MARGINHEIGHT="0" MARGINWIDTH="0">
<FRAME NAME="footer" SRC="project17f.htm" SCROLLING="NO" MARGINHEIGHT="0" MARGINWIDTH="0" > 
</FRAMESET>

</HTML>

The trick was to put the frameborder and border in the <frameset> tag.

Mark
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Web Development

From novice to tech pro — start learning today.