- From: Simon Sapin <simon.sapin@exyr.org>
- Date: Mon, 02 Sep 2013 17:38:31 +0100
- To: www-style@w3.org
Le 31/08/2013 08:10, Xidorn Quan a écrit : > Hi all, > > I am new here. I have a suggestion for selecting parent elements. > > In the current draft, a new mechanism is introduced to change the > subjects of a complex selector, which is prepending (or appending) > exclamation mark, so that an element can be selected according to its > descendents. > > But IMHO, it is not a flexible way to do so. Sometimes we may want to > select not the elements with specified descendents themselves, but the > elements related to them, like preceding, descending, etc. Consider > the following document: > > <UL> > <LI> > <LI><UL></UL> > <LI> > </UL> > > It is not possible for current selectors4 definition to write a > selector to represent LIs which follow a LI who has an UL inside. > There are many similar cases. :matches() to the rescue: li:matches(*! ul) ~ li > However, if we use pesudo-class instead, like :contains() or > :has-child(), the problem can be solved. For the example above, we can > use "LI:has-child(UL)~LI" to select the elements required. > > IMO, this kind of notation looks more intuitive, and won't introduce > new symbols to complexify the grammar. And we would not need to worry > about whether the mark should be prepended or appended anymore. Just > drop it. > > What do you think about this idea? :has-child() seems less general than the subject indicator. Isn’t it? -- Simon Sapin
Received on Monday, 2 September 2013 16:38:55 UTC