W3C home > Mailing lists > Public > www-style@w3.org > January 2012

Re: Previous-sibling combinator

From: Tab Atkins Jr. <jackalmage@gmail.com>
Date: Fri, 27 Jan 2012 15:34:31 -0800
Message-ID: <CAAWBYDBcWL9F5jp4pXdUvdDGxEbwwug0gGV9Z-oxbK+kjXNMVg@mail.gmail.com>
To: "Marat Tanalin | tanalin.com" <mtanalin@yandex.ru>
Cc: www-style@w3.org
2012/1/27 Marat Tanalin | tanalin.com <mtanalin@yandex.ru>:
> 28.01.2012, 03:08, "Tab Atkins Jr." <jackalmage@gmail.com>:
>> On Fri, Jan 27, 2012 at 3:05 PM, Marat Tanalin | tanalin.com
>> <mtanalin@yandex.ru> wrote:
>>
>>>  Hello.
>>>
>>>  It would be nice to have combinator to select previous sibling.
>>>
>>>     P - UL {
>>>         /* Styles for UL element which is
>>>            previous sibling of P element. */
>>>     }
>>>
>>>  The "-" combinator is functionally similar to existing "+" combinator, but selects previous-sibling element instead of next-sibling one.
>>>
>>>  So in result we would have "+" to move forward, and "-" to move backward (like element.nextSibling and element.previousSibling in DOM, respectively).
>>
>> This is already possible with Selectors 4, using the normal sibling
>> combinator and the subject indicator:
>>
>> !ul + p { ... }
>>
>> ~TJ
>
> And how would you write following selector using subject indicator?
>
>    P - UL > LI {...}

Using the future extension to :matches() to allow complex selectors:

:matches(!ul + p) > li {...}

Or, if I get my way, with :has():

ul:has(+p) > li {...}

~TJ
Received on Friday, 27 January 2012 23:35:29 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:20:49 GMT