Does CSS have anything like jQuery's :has()?

后端 未结 2 2034
南笙
南笙 2021-01-18 02:52

In CSS (any version), is there something like, or any other way of doing anything like the :has() selector in jQuery?

jQuery(\':has

相关标签:
2条回答
  • 2021-01-18 03:08

    No, there isn't. The way CSS is designed, does not permit selectors that match ancestors or preceding siblings; only descendants ( and >), succeeding siblings (~ and +) or specific children (:*-child). The only ancestor selector is the :root pseudo-class which selects the root element of a document (in HTML pages, naturally it would be html).

    If you need to apply styles to the element you're querying with :has(), you need to add a CSS class to it then style by that class, as suggested by Stargazer712.

    0 讨论(0)
  • 2021-01-18 03:21

    No. The best way to accomplish this is by using jQuery:

    Css File:

    .myAwesomeClass {
        ...
    }
    

    Js File:

    jQuery(':has(selector)').addClass("myAwesomeClass")
    

    where selector is whatever it is you were originally trying to match.

    0 讨论(0)
提交回复
热议问题