-
Notifications
You must be signed in to change notification settings - Fork 735
Closed
Description
There is already an issue mentioned in 3.6.3. Pseudo-classing Pseudo-elements (I did not find the corresponding issue on GH):
A pseudo-element may be immediately followed by any combination of the user action pseudo-classes [...]
ISSUE 3 Clarify that :not() and :is() can be used when containing above-mentioned pseudos.
I think the issue can be completed with:
- all pseudo-classes: when following a pseudo-element explicitly defined to be matchable by this pseudo-class (eg.
::shadow:empty
,::shadow:defined
,::shadow-child:first-child
, etc) :where()
: when containing user-action pseudo-classes as arguments:defined
: I'm not sure about this one because it is defined as matching elements that are fully defined, as dictated by the host language, not as matching pseudo-element
Pseudo-class functions which do not match the corresponding (pseudo-element) sub-classing condition could be considered as matching nothing instead of being invalid.
But I wonder if I'm missing something because:
::before:hover
does not work in Chrome/Firefox (not tested in other browsers)- MDN browser compat table includes Pseudo-element support with support from early versions of all browsers: is it the support of
:hover
followed by a pseudo-element, or the other way around? The french version defines that the:hover
pseudo-class can follow any pseudo-element, but not the english version. Non-english versions are often translations of the english text. - I could not find any related issues on Chromium Issues or
Mozilla FirebugBugzilla - EDIT: I missed the related issue on Bugzilla and created an issue on Chromium Issues
- Chrome DevTools does not allow to simulate user-action pseudo-classes like
:hover
on a pseudo-element (cf. this SO issue) - Firefox DevTools allows to set
:hover
but it triggers this state on the originating element