- From: Boris Zbarsky <bzbarsky@MIT.EDU>
- Date: Tue, 05 Jun 2007 10:24:38 -0500
- To: Henrik Dvergsdal <henrik.dvergsdal@hibo.no>
- CC: HTML WG <public-html@w3.org>
Henrik Dvergsdal wrote:
> What we're after is to define the <base> element as a global element 
> whose content affect the entire document, including the <head> itself.
The only way to do that while having the definition be compatible with existing 
content is to have the definition only apply if the <base> comes before any 
elements that have URIs involved in any way.
> The following restrictions follow naturally:
> 
> - There can only be one <base> element
> - The <base> should be inside the <head> element.
Agreed on both.
> But there is no law that says that global elements have to come 
> physically before the others.
True, if you're willing to break compat with all existing UAs and existing 
content.  Is that desirable?
Basically, I see two options:
1) <base> has to come before other things, we specify it nicely, any document
    where it _doesn't_ come before other things is non-conforming, and UAs
    handle such documents as they do right now
2) <base> can come after some content in conforming documents, and we specify
    the de-facto standard behavior: <base> only affects things that are inserted
    into the DOM after it has been parsed.
> If we remove the sequencing restrictions and instead state the global 
> nature of <base> and <meta charset=...> explicitly, the spec will be 
> easier to understand and less ambiguous.
And not implementable without breaking the web....  :(
-Boris
Received on Tuesday, 5 June 2007 15:24:51 UTC