Re: [selectors-nonelement] First draft of a new spec for selecting non-element nodes

On Mon, Feb 17, 2014 at 8:02 AM, Tab Atkins Jr. <> wrote:
> On Sat, Feb 15, 2014 at 8:47 PM, Andrew Fedoniouk
> <> wrote:
>> Otherwise we need to mention cases like this:
>>   input[type="number"]::attr(type) { content:"text" }
>> etc.  Either we need to treat ::attr() as first-class pseudo-elements
>> or left them shine in DOM methods or libraries like jquery.
> I did mention that, when I said that ::attr() pseudo-elements never
> generate boxes.  Thus "content: 'text';" has no effect on them.

I can read this

  input[type="number"]::attr(type) { content:"text" }

as: for any input element with type="number"
change used value of 'type' attribute to 'text'.

> They *are* first-class pseudo-elements.  Pseudo-elements don't need to
> generate boxes to "exist".
> DOM methods that evaluate selectors don't currently allow
> pseudo-elements.  When they do, they'll do so in a generic way that
> reflects ::attr() pseudo-elements as well.

1. Attribute/text/comment DOM nodes are not pseudo-elements, these
    are physical objects.

2. Attribute/text/comment selectors, when used, can appear only at rightmost
    position in "dom-selectors".

3. *CSS selectors* module should just declare some
delimiter/combinator like '->'
    and say that any selector that contains it is out of CSS selectors scope -
    *it does not match anything for CSS purposes*.

4. That new DOM node selectors module should include reference to CSS selectors
    module as element selection part and its own syntax for part on the right
    of '->'.

As I said previously that DOM node selectors module should define mechanisms
of the following:
  1. selection of one or several attribute nodes.
  2. selection of --"-- text nodes.
  3. selection of --"-- comment nodes.

Andrew Fedoniouk.

Received on Monday, 17 February 2014 18:57:25 UTC