Re: <A HREF="hands.html" target="content">

Jukka Korpela (jkorpela@cc.hut.fi)
Tue, 20 Jan 1998 10:31:55 +0200 (EET)


Date: Tue, 20 Jan 1998 10:31:55 +0200 (EET)
From: Jukka Korpela <jkorpela@cc.hut.fi>
To: www-html@w3.org
In-Reply-To: <l03130306b0e874ab624b@[192.168.1.40]>
Message-ID: <Pine.OSF.3.96.980120101309.14270C-100000@beta.hut.fi>
Subject: Re: <A HREF="hands.html" target="content">

On Tue, 20 Jan 1998, David Cary wrote:

> Is this a bug in the HTML text, a bug in Microsoft Internet Explorer 4.0,
> or have I messed some preferences setting up ?
> I'm on page
>   http://www.pangea.ca/sorvan/beldandy.html
> . When I click on the pictures of the hands
> <A HREF="hands.html" target="content">
>   <IMG ALIGN=MIDDLE SRC="images/hands-sm.jpg" ALT="B-spline hands"
> WIDTH=420 HEIGHT=100 VSPACE=0 BORDER=0>
> </A>
> nothing happens !

On my copy of IE 4.0 it works as expected, opening the referred document
in a new window. Well, the _quality_ of the functionality isn't that
good; IE 4.0 (unlike e.g. Opera 3.0) opens the new window so that it has
(almost?) the same dimensions and position as the original one, so
a user might not realize what's happening.

And your document validates under HTML 4.0 Transitional. (For some reason
unknown to me, HTML 4.0 Strict does not allow the TARGET attribute.
It's hard to say what's the rationale behind the Strict DTD: it has
some obviously presentational attributes on one hand, and it does not
allow the TARGET attribute which looks essentially structural, although
with a presentational _name_, to me.)

> What should browsers do in cases like this, where they *do* recognize the
> tag (the <a> tag), but they don't recognize one or more of the parameters
> (or are these called "attributes") ?

They are called attributes.

> I keep thinking the HTML standard
> somewhere says say a browser "must" act exactly the same as if those extra
> nonstandard parameters don't exist.

In fact no. It has always been the _recommendation_ to do that, but it's
not a requirement on compliant browsers. It's 

http://www.w3.org/TR/REC-html40/conform.html says:
"Error conditions 
  This specification does not define how conforming user agents handle
  general error conditions, including how user agents behave when they
  encounter elements, attributes, attribute values, or entities not
  specified in this document. 
  However, for recommended error handling behavior, please consult the
  notes on invalid documents."
and the notes include the following:
"If a user agent encounters an attribute it does not recognize, it should
ignore the entire attribute specification (i.e., the attribute and its
value)."

The TARGET attribute is very interesting. It's defined in the context
of frames, but it's also included in HTML 4.0 Transitional, not just
HTML 4.0 Frameset DTD. And I don't think it _needs_ to be coupled
with frames in any way. Au contraire, it can be used as a way of
_avoiding_ the use of frames. On the other hand, the HTML 4.0
specification leaves it open what happens if TARGET is used without
any use of frames. Popular browser behavior is to open a new window
with the given name or, if such a window has been opened already,
show the referred resource in that window. Since such new windows
are independently resizable and positionable by users, they are more
flexible than frames and conceptually simpler. But it seems that in
order to make such use "legal", the specification should be clarified.

Yucca, http://www.hut.fi/u/jkorpela/