- From: Henrik Andersson <henke@henke37.cjb.net>
- Date: Wed, 04 Feb 2015 06:15:56 +0100
- To: "Tab Atkins Jr." <jackalmage@gmail.com>, Matt Mastracci <matthew@mastracci.com>
- CC: Lea Verou <lea@verou.me>, www-style list <www-style@w3.org>
Tab Atkins Jr. skrev: > That said, I'd actually prefer not to implement this. Instead, I'd > prefer to get custom selectors working (at least the declarative alias > kind) as suggested in > <http://dev.w3.org/csswg/css-extensions/#custom-selectors>, so people > can do this themselves if they want it. Doing this well requires > going a little further than what is currently written in the doc, but > all very believable - basically we need a way to handle plumbing > arguments through from the "custom" pseudo to the expansion, and we > need some better combinators to handle "self and/or siblings", etc. > > With that, you could do something like: > > @custom-selector $rest:--n-siblings($n) > :nth-child(1):nth-last-child($n) /self-and-siblings/ $rest; > > So that writing `.foo:--n-siblings(3)` would become > `:nth-child(1):nth-last-child(3) /self-and-siblings/ .foo` after > expansion. > > ~TJ > > Those selectors look scary. Simplicity helps authors get things right. There is also a matter of performance. I don't know how to evaluate performance, but one thing is clear: browsers have the opportunity to optimize if they know what you are doing.
Received on Wednesday, 4 February 2015 05:16:29 UTC