Skip to content

Commit f9bc45f

Browse files
committed
[selectors-4] Define sub-pseudo-element terminology.
1 parent f27d95d commit f9bc45f

1 file changed

Lines changed: 26 additions & 0 deletions

File tree

selectors-4/Overview.bs

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -887,6 +887,31 @@ Pseudo-classing Pseudo-elements</h4>
887887
are not valid when compounded to a pseudo-element;
888888
so, for example, ''::before:first-child'' is an invalid selector.
889889

890+
<h4 id="sub-pseudo-elements">
891+
Sub-pseudo-elements</h4>
892+
893+
Some [=pseudo-elements=] are able to be the [=originating element=]
894+
of other [=pseudo-elements=],
895+
which are defined as the <dfn export lt="sub-pseudo-element">sub-pseudo-elements</dfn>
896+
of this <dfn export>originating pseudo-element</dfn>.
897+
For example,
898+
when ''::before'' is given a ''list-item'' [=display type=],
899+
it becomes the [=originating pseudo-element=]
900+
of its ''::before::marker'' [=sub-pseudo-element=].
901+
902+
Where disambiguation is needed,
903+
the term <dfn export>ultimate originating element</dfn>
904+
refers to the real (non-pseudo) element
905+
from which a [=pseudo-element=] originates.
906+
907+
Unless the corresponding [=sub-pseudo-element=]
908+
is explicitly defined to exist in another specification,
909+
pseudo-element selectors are not valid
910+
when compounded to another pseudo-element selector.
911+
So, for example, ''::before::before'' is an invalid selector,
912+
but ''::before::marker'' is valid
913+
(in implementations that support the ''::before::marker'' [=sub-pseudo-element=]).
914+
890915
<h4 id="pseudo-element-structure">
891916
Internal Structure</h4>
892917

@@ -3976,6 +4001,7 @@ Changes since the 21 November 2018 Working Draft</h3>
39764001
<ul>
39774002
<li>Removed the Selector profiles, marked '':has()'' as optional and at-risk instead.
39784003
(<a href="https://github.com/w3c/csswg-drafts/issues/3925">Issue 3925</a>)
4004+
<li>Added [[#sub-pseudo-elements]] to define [=sub-pseudo-elements=] and related terminology.
39794005
</ul>
39804006

39814007
<h3 id="changes-2018-02">

0 commit comments

Comments
 (0)