Click here to download the Blitz Browser!

Status

This page documents the implementation status of various HTML and CSS features in Blitz.

CSS PropertiesHTML ElementsEventsWPT TestsWPT History

This page documents Blitz's scores on the "css" subsuite of the Web Platform Tests.


wpt / css / selectors / invalidation

Score history
1 month3 months6 months1 year2 years4 yearsAll time
0%20%40%60%80%100%May 2025Jul 2025Sep 2025Nov 2025Jan 2026Mar 2026May 2026Jul 2026Sep 2026css/selectors/invalidation

Data from commit:
ab0e30b Give form controls a UA default font-family (#940) (2026-09-25)

AreaInterop ScoreTestsTest %SubtestsSubtest %
Total34.96%(33/144)22.92%(1418/3055)46.42%
crashtests100.00%(2/2)100.00%(2/2)100.00%
TestSubtestsSubtest %Status
any-link-attribute-removal.html(1/1)100.00%PASS
any-link-pseudo.html(1/1)100.00%PASS
attribute-or-elemental-selectors-in-has.html(9/31)29.03%FAIL
attribute.html(6/6)100.00%PASS
child-indexed-pseudo-classes-in-has.html(39/66)59.09%FAIL
class-id-attr.html(1/1)100.00%PASS
defined-in-has.html(0/1)0.00%FAIL
defined.html(0/1)0.00%FAIL
dir-pseudo-class-in-has.html(0/1)0.00%FAIL
empty-pseudo-in-has-display-none.html(7/14)50.00%FAIL
empty-pseudo-in-has.html(1/6)16.67%FAIL
enabled-disabled.html(2/2)100.00%PASS
first-child-last-child.html(0/2)0.00%FAIL
fullscreen-pseudo-class-in-has.html(0/2)0.00%SKIP
has-append-first-node.html(0/1)0.00%FAIL
has-complexity.html(1/7)14.29%FAIL
has-css-nesting-shared.html(6/12)50.00%FAIL
has-in-adjacent-position.html(193/295)65.42%FAIL
has-in-ancestor-position.html(210/337)62.31%FAIL
has-in-is-non-subject-compound.html(2/3)66.67%FAIL
has-in-parent-position.html(152/211)72.04%FAIL
has-in-sibling-position.html(181/295)61.36%FAIL
has-invalidation-after-removing-non-first-element.html(1/2)50.00%FAIL
has-invalidation-first-in-sibling-chain.html(8/12)66.67%FAIL
has-invalidation-for-wiping-an-element.html(2/5)40.00%FAIL
has-nested-pseudo-001-crash.html(1/1)100.00%PASS
has-nested-pseudo-002-crash.html(1/1)100.00%PASS
has-nested-pseudo-003-crash.html(1/1)100.00%PASS
has-pseudo-element-subject-child-mutation.html(0/4)0.00%FAIL
has-pseudo-element.html(0/1)0.00%FAIL
has-pseudoclass-only.html(24/36)66.67%FAIL
has-sibling-insertion-removal.html(14/28)50.00%FAIL
has-sibling.html(36/71)50.70%FAIL
has-side-effect.html(2/3)66.67%FAIL
has-unstyled.html(5/9)55.56%FAIL
has-with-is-child-combinator.html(7/10)70.00%FAIL
has-with-nesting-parent-containing-complex.html(19/37)51.35%FAIL
has-with-nesting-parent-containing-hover.html(0/1)0.00%SKIP
has-with-not.html(11/21)52.38%FAIL
has-with-nth-child-sibling-remove.html(0/1)0.00%FAIL
has-with-nth-child.html(4/5)80.00%FAIL
has-with-pseudo-class.html(0/41)0.00%FAIL
heading-pseudo-class-in-has-with-headingoffset.html(33/56)58.93%FAIL
heading-pseudo-class-in-has-with-slot-reassignment.html(0/39)0.00%FAIL
heading-pseudo-class-in-has.html(29/72)40.28%FAIL
host-context-pseudo-class-in-has.html(0/6)0.00%FAIL
host-has-shadow-tree-element-at-nonsubject-position.html(0/26)0.00%FAIL
host-has-shadow-tree-element-at-subject-position.html(1/26)3.85%FAIL
host-pseudo-class-in-has.html(0/4)0.00%FAIL
input-in-range-in-has-with-readonly.html(0/4)0.00%FAIL
input-pseudo-classes-in-has.html(0/10)0.00%FAIL
insert-sibling-001.html(0/1)0.00%FAIL
insert-sibling-002.html(0/1)0.00%FAIL
insert-sibling-003.html(0/1)0.00%FAIL
insert-sibling-004.html(0/1)0.00%FAIL
is-pseudo-containing-complex-in-has.html(140/476)29.41%FAIL
is-pseudo-containing-sibling-relationship-in-has.html(20/21)95.24%FAIL
is-where-pseudo-containing-hard-pseudo-and-never-matching.html(8/12)66.67%FAIL
is-where-pseudo-containing-hard-pseudo.html(20/20)100.00%PASS
is.html(7/7)100.00%PASS
lang-pseudo-class-in-has-document-element.html(0/1)0.00%FAIL
lang-pseudo-class-in-has-multiple-document-elements.html(0/1)0.00%FAIL
lang-pseudo-class-in-has-xhtml.xhtml(0/1)0.00%FAIL
lang-pseudo-class-in-has.html(0/1)0.00%FAIL
link-pseudo-class-in-has.html(0/2)0.00%FAIL
link-pseudo-in-has.html(0/1)0.00%FAIL
location-pseudo-classes-in-has.html(0/1)0.00%FAIL
media-loading-pseudo-classes-in-has.sub.html(0/2)0.00%FAIL
media-pseudo-classes-in-has.html(0/3)0.00%FAIL
modal-pseudo-class-in-has.html(0/5)0.00%SKIP
negated-always-matches-negated-first-of-type-when-ancestor-changes.html(1/1)100.00%PASS
negated-always-matches-negated-last-of-type-when-ancestor-changes.html(1/1)100.00%PASS
negated-first-of-type-in-nonsubject-position.html(1/1)100.00%PASS
negated-has-in-nonsubject-position.html(1/1)100.00%PASS
negated-is-always-matches-negated-first-of-type-when-ancestor-changes.html(1/1)100.00%PASS
negated-is-always-matches-negated-last-of-type-when-ancestor-changes.html(1/1)100.00%PASS
negated-is-never-matches-negated-first-of-type-when-ancestor-changes.html(1/1)100.00%PASS
negated-is-never-matches-negated-last-of-type-when-ancestor-changes.html(1/1)100.00%PASS
negated-last-of-type-invalidation.html(1/1)100.00%PASS
negated-negated-first-of-type-when-ancestor-changes.html(1/1)100.00%PASS
negated-negated-last-of-type-when-ancestor-changes.html(1/1)100.00%PASS
negated-never-matches-negated-first-of-type-when-ancestor-changes.html(1/1)100.00%PASS
negated-never-matches-negated-last-of-type-when-ancestor-changes.html(1/1)100.00%PASS
negated-nth-child-when-ancestor-changes.html(0/1)0.00%FAIL
negated-nth-last-child-when-ancestor-changes.html(0/1)0.00%FAIL
not-001.html(2/2)100.00%PASS
not-002.html(6/6)100.00%PASS
not-pseudo-containing-complex-in-has.html(115/460)25.00%FAIL
not-pseudo-containing-sibling-relationship-in-has.html(2/3)66.67%FAIL
nth-child-containing-ancestor.html(0/1)0.00%FAIL
nth-child-in-shadow-root.html(0/1)0.00%FAIL
nth-child-of-attr-largedom.html(0/1)0.00%FAIL
nth-child-of-attr.html(0/1)0.00%FAIL
nth-child-of-class-prefix.html(0/1)0.00%FAIL
nth-child-of-class.html(0/1)0.00%FAIL
nth-child-of-has.html(0/1)0.00%FAIL
nth-child-of-id-prefix.html(0/1)0.00%FAIL
nth-child-of-ids.html(0/1)0.00%FAIL
nth-child-of-in-ancestor.html(0/1)0.00%FAIL
nth-child-of-in-is.html(0/1)0.00%FAIL
nth-child-of-in-shadow-root.html(0/1)0.00%FAIL
nth-child-of-is.html(0/1)0.00%FAIL
nth-child-of-pseudo-class.html(0/1)0.00%FAIL
nth-child-of-sibling.html(0/1)0.00%FAIL
nth-child-when-ancestor-changes.html(0/1)0.00%FAIL
nth-child-when-sibling-changes.html(0/1)0.00%FAIL
nth-child-whole-subtree.html(0/1)0.00%FAIL
nth-last-child-containing-ancestor.html(0/1)0.00%FAIL
nth-last-child-in-shadow-root.html(0/1)0.00%FAIL
nth-last-child-of-attr.html(0/1)0.00%FAIL
nth-last-child-of-class-prefix.html(0/1)0.00%FAIL
nth-last-child-of-class.html(0/1)0.00%FAIL
nth-last-child-of-has.html(0/1)0.00%FAIL
nth-last-child-of-id-prefix.html(0/1)0.00%FAIL
nth-last-child-of-ids.html(0/1)0.00%FAIL
nth-last-child-of-in-ancestor.html(0/1)0.00%FAIL
nth-last-child-of-in-is.html(0/1)0.00%FAIL
nth-last-child-of-in-shadow-root.html(0/1)0.00%FAIL
nth-last-child-of-is.html(0/1)0.00%FAIL
nth-last-child-of-pseudo-class.html(0/1)0.00%FAIL
nth-last-child-of-sibling.html(0/1)0.00%FAIL
nth-last-child-when-ancestor-changes.html(0/1)0.00%FAIL
nth-last-child-when-sibling-changes.html(0/1)0.00%FAIL
nth-of-namespace-class-invalidation-crash.html(1/1)100.00%PASS
open-pseudo-class-in-has.html(0/9)0.00%FAIL
option-disabled-when-ancestor-changes.html(0/4)0.00%FAIL
part-dir.html(0/2)0.00%FAIL
part-lang.html(0/2)0.00%FAIL
part-pseudo.html(0/1)0.00%FAIL
placeholder-shown.html(2/4)50.00%FAIL
quirks-mode-stylesheet-dynamic-add-001.html(0/1)0.00%FAIL
selectorText-dynamic-001.html(1/1)100.00%PASS
sheet-going-away-001.html(1/1)100.00%PASS
sheet-going-away-002.html(1/1)100.00%PASS
sibling.html(7/7)100.00%PASS
state-in-has.html(0/1)0.00%FAIL
subject-has-invalidation-with-display-none-anchor-element.html(0/1)0.00%FAIL
target-pseudo-in-has.html(0/1)0.00%FAIL
typed-child-indexed-pseudo-classes-in-has.html(54/102)52.94%FAIL
user-action-pseudo-classes-in-has.html(0/1)0.00%SKIP
user-valid-user-invalid.html(0/1)0.00%SKIP
where.html(5/5)100.00%PASS