[html5] Abbreviated title tags render a blank background?
Jukka K. Korpela
jukka.k.korpela at kolumbus.fi
Mon Apr 11 02:20:22 PDT 2011
Nathan Neff wrote:
> I have a simple HTML page that has a blank <title> element that's
> expressed using <title />
> This is probably incorrect/invalid (x)HTML.
It is invalid in HTML 4.01 and predecessors. It is valid in XHTML 1.0 and
relatives but not recommended - this shorthand should be used only for
elements with EMPTY declared contents (i.e. elements that _must_ have empty
contents by the syntax).
If you add the xmlns attribute as required by XHTML 1.0 and serve the
document as application/xhtml+xml, then e.g. Firefox 4 correctly processes
it by the XHTML 1.0 book, treating <title /> as equivalent to
<title></title>.
So things get rather complicated. The morale is: use <title></title>. Or,
better still, a title element with suitable contents. (Even test documents
benefit from it - or you benefit, when you play with minimized windows or
tabs, showing the title element contents.) In HTML5, you could even omit the
<title> element altogether, though this is not recommended for general use.
> <html>
> <head>
> <title />
> </head>
> <body>
> If you <br />see this body, you're probably not using Chrome or
> Firefox 4. Chrome and Firefox 4 do not show this text.
> </body>
> </html>
>
> Firefox 4 and Google Chrome only render a blank background.
They treat <title /> basically as <title> and all the rest as the contents
of the <title> element.
> Is this behavior a rule of HTML 5?
As far as I can see (and the parsing rules are somewhat complex, for me at
least), HTML 5 prescribes processing of <title> element content as raw text
data, so yes. The element is only closed by an explicit </title> tag. If I'm
not mistaken, this also applies to XHTML serialization of HTML 5.
--
Yucca, http://www.cs.tut.fi/~jkorpela/
More information about the Help
mailing list