Re: Status of Frames in HTML 4

G. James Berigan writes:
> Ann Navarro <ann@webgeek.com> wrote:
 
>> That said, it still has no bearing on whether or not XHTML 1.1, a next
>> generation spec twice removed from HTML 4.0(1) should or should not contain
>> Frames in it's core.

> HTML 4 already does not contain frames in its core.  There is zero frames
> support in the Strict DTD.  Noframes markup in a Frameset document is
> validated as Transitional markup with no option to validate it as Strict.

> FRAMES ARE DEPRECATED IN HTML 4!  THEREFORE THEY CAN BE DROPPED ENTIRELY
> FROM ANY SUCCESSOR!

It's a bad sign when the tone of the discussion has been reduced to
shouting.  Since everything appearing in the Transitional but not
Strict DTD *except* TARGET and NOFRAMES is explicitly indicated in the
spec as being deprecated, and since
<http://www.w3.org/TR/1999/REC-html401-19991224/struct/global.html#h-7.2>
says

"The HTML 4.01 Strict DTD includes all elements and attributes that
have not been deprecated or do not appear in frameset documents."

it sounds to me like the W3C was deliberately leaving the question of
frames' status open by dividing HTML4 into three categories: Strictly
Validating Stuff, Deprecated Stuff and Frame Stuff.  At any rate, I
think it's quite a stretch to look at the spec and declare frames to
be deprecated without more knowledge of the W3C's thinking.

Unlike most items deprecated in HTML4, frames cannot be replaced in
any obvious way using stylesheets.  In addition to zillions of bad
uses for frames, there are a few good ones, and since frames are not
likely to go out of use any time soon, I think the community is better
served by promoting responsible use of them.  At any rate,
TARGET="_top" attribute is useful for sites which don't use frames
themselves but know they're likely to be linked to within someone
else's frameset.  I was once in that situation with a site I linked
back to, meaning that I could not use the Strict DTD if I wanted to
avoid nesting this site's frameset.

Incidentally, the fact that Frames don't appear in HTML 3.2 does not
rule out their being deprecated.  For instance, the S element was new
in HTML 4.0, but deprecated at the same time.

					John T. Whelan
					whelan@iname.com
					http://www.slack.net/~whelan/

Received on Monday, 17 January 2000 09:42:57 UTC