- From: Daniel Tan <lists@novalistic.com>
- Date: Wed, 6 Sep 2017 12:51:32 +0800
- To: www-style@w3.org
I noticed that :root:nth-child(n) now matches in Chrome and Firefox. It does not match in Safari, IE or Edge, as I would expect. It seems that this was changed in selectors-4, which says > Note: Selectors 3 described these selectors as selecting elements > based on their index in the child list of their parents. (This > description survives in the name of this very section, and the names > of several of the pseudo-classes.) As there was no reason to exclude > them from matching elements without parents, or with non-element > parents, they have been rephrased to refer to an element’s relative > index amongst its siblings. The definition of "inclusive siblings" points to the DOM spec, which requires that an element have a non-null parent in order to be considered a sibling: > An inclusive sibling is an object or one of its siblings. > An object A is called a sibling of an object B, if and only if B and > A share the same non-null parent. I personally disagree with the change from L3 as it only serves to confuse, but in any case, if L4 does mean to update the child-indexed pseudos to match elements without parents, it should probably not use the definitions from the DOM spec, but its own. -- Daniel Tan <http://NOVALISTIC.com>
Received on Wednesday, 6 September 2017 04:52:07 UTC