Matching for :has() relative selectors
Categories
(Core :: CSS Parsing and Computation, enhancement)
Tracking
()
Tracking | Status | |
---|---|---|
firefox113 | --- | fixed |
People
(Reporter: dshin, Assigned: dshin)
References
Details
Attachments
(2 files, 2 obsolete files)
Assignee | ||
Updated•2 years ago
|
Assignee | ||
Updated•2 years ago
|
Assignee | ||
Comment 1•2 years ago
|
||
Assignee | ||
Comment 2•2 years ago
|
||
e.g. Given ':has( .b .c)', and '.a .b .c', if we try to run the match on .b, we
can terminate the right-to-left match early when the next element to match is .a.
We need to skip only at the exact nesting level since the escape in the further
nesting (e.g. ':has(:is(.a .b .c))') is valid.
Depends on D172019
Assignee | ||
Comment 3•2 years ago
|
||
As long as the relative selector matching does not escape the boundary defined
by the relative selector anchor element, it's trivially true that the match
is the descendant of the anchor element.
Depends on D172020
Updated•2 years ago
|
Updated•2 years ago
|
Updated•2 years ago
|
Comment 5•2 years ago
|
||
Mixed results here... label and textarea is okay, but label and input fails (except for general sibling). so maybe problem with void elements?
Comment 6•2 years ago
|
||
What I tested with
Comment 7•2 years ago
|
||
bugherder |
Assignee | ||
Comment 8•2 years ago
|
||
Of note, as :aja's testcase demonstrates: There are issues with style sharing cache (bug 1793012) that causes correctness issues.
Description
•