Skip to content

[selectors-4] Consider disallowing logical combination pseudo-classes inside :has() #6952

Closed
@anttijk

Description

@anttijk

That is disallow nested :has()

:has(:has(foo))

and

:has(:not(foo))
:has(:is(foo))
:has(:where(foo))

These cases complicate style invalidation in the engine too much while also being difficult to reason about and generally not very useful.

It is also easy to make mistakes with :has(:not(foo)) since it may be non-obvious it is not the same as :not(:has(foo)).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions