W3C home > Mailing lists > Public > www-html@w3.org > December 2000

Re: The <HR> tag

From: Jukka Korpela <Jukka.Korpela@hut.fi>
Date: Wed, 27 Dec 2000 14:46:58 +0200
To: www-html@w3.org
Message-ID: <j10j4tsro8s6gm60s745uvj9f2krpumgqg@4ax.com>
On Tue, 26 Dec 2000 18:15:50 -0500, you wrote:

>On 6:00 PM 12/26/00 Frank Tobin <ftobin@uiuc.edu> wrote:
>> I've always wondered why <hr> is included in the XHTML spec, as it
>> seems a highly presentational element, better replaced by a CSS
>> border element or something.  Could someone provide some insight as
>> to why it's in XHTML?
>It can be inferred to be a logical section break?

That's how it was originally defined, in fact. The good old HTML 2.0
_named_ it according to "Horizontal Rule", but _defined_ it as follows:
"The <HR> element is a divider between sections of text". Although this
definition was immediately followed by the statement "typically a full
width horizontal rule or equivalent graphic", it should be clear that
the _meaning_ of <HR> was intended to be logical.

This was a bit confusing, of course, and it was illogical that while <P>
was changed (between some early drafts and the adoption of HTML 2.0)
from a pure divider (for which no end tag was allowed) to a container,
<HR> technically remained as an "empty element". And in practice it
became used for pure decoration, and the later specifications muddled
water instead of trying to establish true sectioning.

If <DIV> is used for sectioning, then there is nothing in the _default_
presentation that reflects the structure. In that sense, discarding <HR>
deprives authors of even the primitive way of indicating _major_
structures in documents. And <DIV> was never designed for such purposes;
it's a meaningless (i.e., semantically empty) block-level container, and
its actual usage strongly affirms this. In the current hypetext world,
I'm afraid this will be no argument against the "obvious" move of
deprecating <HR> in favor of style sheets. It's easy to purify HTML from
all presentational features if you don't have to leave any structural
markup either, just a few containers (you know, <DIV> and <SPAN>, and
you might just as well combine them, since on can say display:block or
display:inline in CSS, and this is what is actually happening: XML just
lets you _name_ your DIVs/SPANs as you like).
Yucca, http://www.hut.fi/u/jkorpela/
Qui nescit tacere nescit et loqui
Received on Wednesday, 27 December 2000 07:48:42 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 15:05:55 UTC