Skip to content

Implement effective CSS property cascade semantics - #305

Merged
danwalmsley merged 1 commit into
mainfrom
feature/css-effective-properties-235
Sep 17, 2026
Merged

danwalmsley merged 1 commit into
mainfrom
feature/css-effective-properties-235

Conversation

@danwalmsley

Copy link
Copy Markdown
Collaborator

Summary

  • evaluate rollback over effective longhands for common box shorthands while preserving the ordinary no-rollback hot path
  • preserve authored inline declaration order and replay overlapping shorthand/longhand declarations correctly
  • implement CSSOM all replacement/removal and important all: unset behavior
  • add a 12-case browser-referenced WPT contract, native scaling regression, and validation evidence

Validation

  • Chrome 153: 12/12 contract subtests
  • native current parser: 12/12
  • native legacy parser: 12/12
  • existing cascade winner matrix: 17/17
  • adjacent CSSOM contracts: 16/16
  • NativeWeb CTest: 3/3
  • cascade-layer scaling counters invariant with 32 vs 1024 unrelated nodes

Closes a bounded stage of #235; the issue remains open for complex shorthands, broader origins/inheritance, and remaining structural work.

@danwalmsley
danwalmsley merged commit 3d14324 into main Sep 17, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant