diff options
Diffstat (limited to 'components/selectors/matching.rs')
-rw-r--r-- | components/selectors/matching.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/components/selectors/matching.rs b/components/selectors/matching.rs index e8fd8afebca..d8d4ad59946 100644 --- a/components/selectors/matching.rs +++ b/components/selectors/matching.rs @@ -851,6 +851,14 @@ where matches_generic_nth_child(element, context, 0, 1, true, false, flags_setter) && matches_generic_nth_child(element, context, 0, 1, true, true, flags_setter) }, + Component::Is(ref list) | Component::Where(ref list) => context.shared.nest(|context| { + for selector in &**list { + if matches_complex_selector(selector.iter(), element, context, flags_setter) { + return true; + } + } + false + }), Component::Negation(ref negated) => context.shared.nest_for_negation(|context| { let mut local_context = LocalMatchingContext { matches_hover_and_active_quirk: MatchesHoverAndActiveQuirk::No, |