- From: Christof Hoeke <csad7@t-online.de>
- Date: Wed, 20 Feb 2008 11:09:04 +0100
- To: Anne van Kesteren <annevk@opera.com>
- CC: Richard Ishida <ishida@w3.org>, 'fantasai' <fantasai.lists@inkedblade.net>, 'Www-style' <www-style@w3.org>
Anne van Kesteren wrote: > > On Tue, 19 Feb 2008 19:57:53 +0100, Christof Hoeke <csad7@t-online.de> > wrote: >> This is more or less the issue which the XML Namespace specification >> would prevent. Defining a namespace with the empty string as >> namespaceURI is not allowed in XML... > > It is in XML 1.1. And there's talk of backporting that to 1.0. Anyway, > what makes you think this is an issue? I did not know about XML 1.1 had changed that (XML 1.1 which I guess should be seen as a failure as the current discussion on XML-dev about XML 2.0 shows). Anyway, it would/will be an issue if XML and CSS handle namespaces differently and regarding XML 1.0 and current CSS they do: XML: <example xmlns:empty=""/> => invalid CSS: @namespace empty ""; => valid >>> No. By default type selectors match elements in every namespace. >> >> Is that really how it works? If browsers would match elements in >> "every namespace" browsers would not handle namespaces as defined by >> the spec? (or am I too confused this evening?) > > Seems like you are. just to be sure: given XML: <doc xmlns="http://example.com#n1" xmlns:n2="http://example.com#n2"> <example/> <example xmlns="http://example.com#n3"/> <n2:example xmlns="http://example.com#n1"/> </doc> CSS selector with no default or any other namespace defined: example would not select anything in the above XML, or does it? (I wrote another post with a more complete example yesterday in a new thread) >> I somehow assumed as you write later that Browsers somehow use >> something like >> >> @namespace "http://www.w3.org/1999/xhtml" >> >> for XHTML files. For HTML not using namespaces they use more or less >> >> @namespace "" >> >> (in this case the empty string is even allowed in XML but it also >> hardly makes any sense at all as there is only the empty namespace >> anyway if one could call it that here) > > Not really. Browsers that have "ua.css" file use @namespace > "http://www.w3.org/1999/xhtml"; for both HTML and XHTML. But that's > besides the point. We're talking about author style sheets here. (just referring to the question by Richard regarding HTML) >>> Note that most browsers, for CSS purposes at least, already act as >>> if HTML elements are in the http://www.w3.org/1999/xhtml namespace. >> >> (this is what I tried to summarize above) > > You claimed something about @namespace "" ... you gave the actual implementation above (thanks), above was just what I assumed would be how it worked >>>> I guess I'm looking for information about how this is applied along >>>> with the syntactic description. >>> >>> Why? It's pretty self-evident. (If the namespaces concept of XML >>> namespaces is itself not clear, which seems to be the problem here, I >>> suggest simply not bothering with them. Namespaces are hardly >>> relevant on the Web anyway.) >> >> (I guess they are relevant if you have something like ATOM embedded in >> XHTML or are also useful if you like to style a SVG element embedded >> in XHTML (very useful when using Prince-XML). But you are of course >> right that most websites work just without.) > > Atom in XHTML?! SVG and XHTML work perfectly together without needing > the namespace support of CSS. SVG/XHTML do work, but if you need to style a document using both you should understand namespaces and then they are relevant on the web too I guess. christof
Received on Wednesday, 20 February 2008 10:10:22 UTC