Bug 261315

Summary: invalidate :has() with nested positional pseudo-class selectors using new MatchElement/IsNegation values
Product: WebKit Reporter: Cameron McCormack (:heycam) <heycam>
Component: CSSAssignee: Nobody <webkit-unassigned>
Status: NEW    
Severity: Normal CC: webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Cameron McCormack (:heycam)
Reported 2023-09-07 21:53:52 PDT
In https://bugs.webkit.org/show_bug.cgi?id=253943 I fixed invalidation issues with :has() selectors that have nested positional pseudo-class selectors (like :nth-child() and :first-child), by using style relation bits. A better solution suggested by Antti on the PR might be to generate new MatchElement/IsNegation values to represent the fact that class name changes need to be checked in both the "before change" and "after change" cases, and to look at the siblings of the element too.
Attachments
Radar WebKit Bug Importer
Comment 1 2023-09-14 21:54:38 PDT
Note You need to log in before you can comment on or make changes to this bug.