diff --git a/Userland/Libraries/LibWeb/CSS/StyleResolver.cpp b/Userland/Libraries/LibWeb/CSS/StyleResolver.cpp index 0d72b5fce4..bf5720a413 100644 --- a/Userland/Libraries/LibWeb/CSS/StyleResolver.cpp +++ b/Userland/Libraries/LibWeb/CSS/StyleResolver.cpp @@ -74,7 +74,7 @@ Vector StyleResolver::collect_matching_rules(const DOM::Element& e size_t selector_index = 0; for (auto& selector : rule.selectors()) { if (SelectorEngine::matches(selector, element)) { - matching_rules.append({ rule, style_sheet_index, rule_index, selector_index }); + matching_rules.append({ rule, style_sheet_index, rule_index, selector_index, selector.specificity() }); break; } ++selector_index; diff --git a/Userland/Libraries/LibWeb/CSS/StyleResolver.h b/Userland/Libraries/LibWeb/CSS/StyleResolver.h index 4042898b97..6b2e980893 100644 --- a/Userland/Libraries/LibWeb/CSS/StyleResolver.h +++ b/Userland/Libraries/LibWeb/CSS/StyleResolver.h @@ -18,6 +18,7 @@ struct MatchingRule { size_t style_sheet_index { 0 }; size_t rule_index { 0 }; size_t selector_index { 0 }; + u32 specificity { 0 }; }; class StyleResolver {