Closed
Bug 147070
Opened 23 years ago
Closed 15 years ago
Problem with nested <iframe>
Categories
(Core :: DOM: HTML Parser, defect, P5)
Tracking
()
RESOLVED
WONTFIX
Future
People
(Reporter: heller, Unassigned)
References
()
Details
(Keywords: testcase)
Attachments
(1 file)
352 bytes,
text/html
|
Details |
I have created a website that I *believe* follows the standards for HTML 4.01,
using an <iframe> tag. I used the information on the page at the URL
http://www.w3.org/TR/REC-html40/present/frames.html.
What happens is the both the src= tag AND the body of the <iframe> is displayed,
or rather *part* of the body is displayed.
The URL above contains the HTML code that Mozilla seems to not handle properly.
BTW: I'm using Mozilla/5.0 (X11; U; Linux i586; en-US; rv:0.9.5) Gecko/20011012,
in case it matters.
Comment 1•23 years ago
|
||
Which part of the iframe's child content is shown?
Also, see http://validator.w3.org/check?uri=http%3A%2F%2Fwww.deepsoft.com%2Fcgi-
bin%2Fdeepwoods.cgi&charset=%28detect+automatically%29&doctype=Inline -- this
page is not anywhere close to being valid HTML; for one thing it has the wrong
doctype.
Reporter | ||
Comment 2•23 years ago
|
||
OK, I fixed the code up some. It still fails to validate, but the 'errors'
don't appear valid to me: the validator does not like the presence of a <body>
tag in a FRAMESET DOCTYPE without a
<frameset>...</NOFRAMES>...</NOFRAMES></FRAMESET>, but I need the FRAMESET
doctype to handle the <IFRAME> tag, which needs to be in <BODY>, which seems not
to be allowed in a FRAMESET DOCTYPE......
Note that all of the HTML code is generated by CDI scripts.
The validator seems to also have problems with '&' in the query part of URLs,
even when the URLs are properly quoted.
These appear (to me) to be bugs in the W3C validator.
As to what is being displayed (that shouldn't) it appears to be everything after
the first (of three) </iframe> tags. Note that there are two embedded
<iframe>...</iframe> blocks inside the outer <iframe>...</iframe>. These are
for banner ads. Simplistictly speaking, the document is structured like this:
<html>
<head>
</head>
<body>
<iframe src="...">
<table>
<tr>
<td width="165"...>
</td>
<td>
<iframe src="...">
</iframe> <!-- Mozilla 0.9.5 seems to think that this </iframe> closes
the *first* </iframe>
<!-- everything below here is displayed, after the content of the URL specificed
in the src= element of the *first* </iframe> -->
</td>
</td width="130">
<iframe src="...">
</iframe>
</td>
</tr>
</table>
</iframe>
</body>
</html>
Target Milestone: --- → mozilla0.9.5
Comment 3•23 years ago
|
||
> the validator does not like the presence of a <body> tag in a FRAMESET DOCTYPE
That's because that doctype is for frameset documents. This is not a frameset
document. The <iframe> changes nothing -- the whole point of <iframe> is that
it can be used in an otherwise normal non-frameset HTML document.
> The validator seems to also have problems with '&'
That's because you can put entities in the strings. So you need to escape "&"
as "&", since "α", for example, is a valid way to put an actual greek
letter in the query string.
All of which should not be affecting this bug, really. ;)
Over to parser; I just looked and we should not be using
CTextToken::ConsumeUntil inside <iframe>, but I could be wrong about that...
It certainly _sounds_ like we're using it...
Assignee: jkeiser → harishd
Status: UNCONFIRMED → NEW
Component: HTMLFrames → Parser
Ever confirmed: true
QA Contact: amar → moied
Reporter | ||
Comment 4•23 years ago
|
||
> Over to parser; I just looked and we should not be using
> CTextToken::ConsumeUntil inside <iframe>, but I could be wrong about that...
> It certainly _sounds_ like we're using it...
Yeah, It *should* be doing a 'balanced' skip instead of a 'stop at first
</iframe>' type of skip. It should handle nested <iframe>'s and it appears not
be handling them properly..
Reporter | ||
Comment 5•23 years ago
|
||
Because of various *other* issues, I changed the site in ways that effectively
avoids this partitular bug. Just in case someone visits the site and wonders
"What is wrong? Looks OK to me." Let me know if a test case is needed, and I
will create one.
Comment 6•23 years ago
|
||
Please do and attach it to this bug using
http://bugzilla.mozilla.org/attachment.cgi?bugid=147070&action=enter -- that
will allow testing and verification of fixes if nothing else.
Reporter | ||
Comment 7•23 years ago
|
||
I created a test page at the URL http://www.deepsoft.com/cgi-bin/iframe.cgi that
invokes the bug, which seems to a problem Mozilla has with nested <iframe> blocks.
Comment 8•23 years ago
|
||
Um... That page looks completely identical in IE5 and Mozilla. There is also
no way to tell whether the testcase passes or fails... could you make the text
that should _not_ show up be something like "THIS TEXT SHOULD NOT SHOW UP" or
something? That way it's obvious at a glance....
Reporter | ||
Comment 9•23 years ago
|
||
I added some text that should ONLY show up if viewed with a browser that does
NOT support the <iframe> tag, or one that mis-supports the <iframe> tag.
I guess it is possible that IE is broken too...
What *should* show up is something like this:
Navigation <a 468x60 ad banner image> <a 120x600
Frame 'skyscraper'
ad image>
<Some header navigation and logo
images>
<small image> Welcome To Deepwoods Software
Deepwoods software is a small consulting and
shareware business, specializing in database
and systems software using C, C++, and Tcl/Tk
in a UNIX environment. Deepwoods also produces
GPL shareware and freeware. These programms
include software for home libraries, role playing
gamers, and model railroaders. These programs and
packages can be downloaded here and other places
for free. Ask a free question! Learn more about
Deepwoods Software. Find out about the products
available for free download. Read and sign the
guest book. Or try out the Discussion Areas.
<Tcl/Tk feather logo> Copyright...
And that should be all. The 'Navigation Frame' in the *real* site has a tall
stack of nagigation buttons and the skyscraper add is also a 'tall' object.
Compare what http://www.deepsoft.com/cgi-bin/deepwoods.cgi displays vs. what
http://www.deepsoft.com/cgi-bin/iframe.cgi displays. Presently
http://www.deepsoft.com/cgi-bin/deepwoods.cgi does NOT use the <iframe> tag
(except in the skyscraper ad served by AdvertWizard), and does not include the
468x60 ad banner at all. I believe what was happening when I had the 468x60 ad
banner, it was using an <iframe> and Mozilla (0.9.5) was *prematurely* closing
the <iframe> block used for the main content with the </iframe> tag on the
banner ad. My <iframe>'s src element loads a <frameset> and the body of the
<iframe> simulates the <frameset> with a nested set of <table>s, which in turn
include the ad images which are handled with <iframe>s. I changed
http://www.deepsoft.com/cgi-bin/deepwoods.cgi to just use the nested <table>s --
I presently have the <frameset> code disabled (there were other issues with the
embedded <frame>s in the <frameset> in the <iframe> (not a browser problem, but
website usability issues, involving nesting scrollbars with smaller browser
windows).
Comment 10•23 years ago
|
||
Comment 11•23 years ago
|
||
Yep, this looks like it's buggy in IE5 as well... IE seems to not allow nesting
<iframe> at all (it shows two iframes in that testcase).
Summary: Problem with <iframe> with embedded <table> → Problem with nested <iframe>
Target Milestone: mozilla0.9.5 → ---
Comment 12•23 years ago
|
||
This bug has been marked "future" because the original netscape engineer working
on this is over-burdened. If you feel this is an error, that you or another
known resource will be working on this bug,or if it blocks your work in some way
-- please attach your concern to the bug for reconsideration -----
Status: NEW → ASSIGNED
Priority: -- → P5
Target Milestone: --- → Future
Updated•15 years ago
|
Assignee: harishd → nobody
Status: ASSIGNED → NEW
QA Contact: moied → parser
Comment 13•15 years ago
|
||
WONTFIX per HTML5.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → WONTFIX
You need to log in
before you can comment on or make changes to this bug.
Description
•