W3C home > Mailing lists > Public > html-tidy@w3.org > July to September 2000

Re: frame

From: Alexander Biron <biron@ifh.de>
Date: Tue, 5 Sep 2000 10:51:01 +0200 (MEST)
To: johny jugianto <johny.q@scientist.com>
cc: html-tidy@w3.org, gerald@w3.org
Message-ID: <Pine.LNX.4.21.0009051011280.1233-300000@pbaik7.ifh.de>
On Tue, 5 Sep 2000, johny jugianto wrote:

> i use tidy to file "try.html"
> 
> but tidy print error like this:
> Tidy (vers 4th August 2000) Parsing "try.html"
> line 15 column 3 - Warning: missing </noframes> before <frame>
> line 15 column 3 - Warning: <frame> not inside 'noframes' element
> line 15 column 3 - Warning: missing </noframes> before <frame>
> line 15 column 3 - Warning: <frame> not inside 'noframes' element
> line 15 column 3 - Warning: missing </noframes> before <frame>
> line 15 column 3 - Warning: <frame> not inside 'noframes' element
> so on.........
> 
> what happen ?
> how's to fix it ?

Hi Johnny,

the fix is quite simple: Move the </frameset> tag to another place,
namely to a place just before the closeing </body> tag. Then tidy works
fine and produces the attached file. 

Why does this fix work? It is correct HTML and tidy can cope with
correct HTML. When you pipe wrong HTML through tidy, tidy does not catch
all possible HTML errors yet (though it tries). Simple rule for
documents containing frames: After the closing </head> tag, the next tag
is <frameset>. The corresponding closing </frameset> should be just
before the closing </html> tag. Within the frameset you can have other
<frameset>...</frameset> containers, <frame> tags and 
<noframes><body>...</body></noframes> containers. Most peole put the
noframes part either at the very top or the very bottom of the outermost
<frameset>.

Another hint for your document: Within the noframes part, you can make
the individual frames accessible to users whose browser does not support
frames: Simply include <a hrefs> to each individual frame source.

Why did tidy run into an infinite loop? There seems to be a bug in
tidy. IMHO when tidy finds a <frame> tag outside a <frameset>, it should
imply a missing <frameset>. Instead it seems it implys a missing
<noframes>. Then again tidy checks the <noframes> part and knows
(correctly) that a <frame> is not allowed inside a <noframes> container.


-- 
Cheers alex          Alexander Biron

Pitcairn Island - country without email but with top level domain .pt
http://www.wired.com/news/politics/0,1283,34321,00.html

work:	http://www.ifh.de/~biron/	private:
	Tel (+49)33762-77-233   	Tel(+49)30-4948857
	mailto:biron@ifh.de    		mailto:biron@frohnau-flamingos.de


Received on Tuesday, 5 September 2000 04:51:09 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 3 April 2012 06:13:44 GMT