Re: [selectors-nonelement] ::attr(*|localname), ::attr(ns|*), and ::attr(*)

On 24/02/2014 21:16, Tab Atkins Jr. wrote:
> In type selectors, "foo" and "*" are treated differently wrt
> namespaces when there's no default namespace.  "foo" is equivalent to
> "|foo", but "*" is equivalent to "*|*".

That is not the case.

http://dev.w3.org/csswg/selectors4/#typenmsp says:

E
     if no default namespace has been declared for selectors, this is 
equivalent to *|E. Otherwise it is equivalent to ns|E where ns is the 
default namespace.


> So consistency with attribute selectors is maintained - ::attr(foo)
> would select attributes in the null namespace, same as [foo], but
> ::attr(*) selects all attributes regardless of namespace.

-- 
Simon Sapin

Received on Monday, 24 February 2014 21:26:56 UTC