Skip to content

Match read-only and read-write element states - #453

Merged
wieslawsoltes merged 1 commit into
mainfrom
feature/css-form-read-write-257
Sep 18, 2026
Merged

wieslawsoltes merged 1 commit into
mainfrom
feature/css-form-read-write-257

Conversation

@wieslawsoltes

Copy link
Copy Markdown
Collaborator

:read-only and :read-write were accepted by the selector parser but always rejected by native matching. This change derives writable state from the existing readonly, disabled, type, and inherited contenteditable sources, including disabled fieldset ancestry and editable inheritance boundaries.

Text-capable inputs and textareas match :read-write while mutable; readonly or disabled controls and non-text controls match :read-only. Ordinary HTML elements inside an effective contenteditable=true, empty, or plaintext-only region match :read-write; contenteditable=false stops inheritance. Other elements match :read-only.

The dependency plan now invalidates bounded subjects/descendants for readonly, disabled, type, and contenteditable changes, including the existing first-legend structural boundary.

Validation debt: under the current implementation-only priority, browser/WPT/native correctness, build, performance, allocation, memory, lifecycle, scene/pixel, product, hosted checks, and CI monitoring were intentionally skipped. git diff --check passed. Document designMode and richer editing-host coverage remain outside this child.

Closes #452
Parent: #257

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.

Match read-only and read-write element states

1 participant