Skip to content

[cssom]Inline style manipulation is somewhere between underspecified and incorrectly specified #1559

@bzbarsky

Description

@bzbarsky

A simple example. Say we start at https://drafts.csswg.org/cssom/#dom-cssstyledeclaration-setproperty and walk through the steps. The property value is parsed, the new value is set, etc. This is all fine.

But there's a comefrom bit in https://drafts.csswg.org/cssom/#the-elementcssinlinestyle-interface that says:

Mutating the declarations must set the style content attribute on the context object to the serialization of the declarations. If the style content attribute is set, changed or removed, the declarations must be updated as appropriate.

Where does that fit into the above-linked algorithm? Does it run inside https://drafts.csswg.org/cssom/#set-a-css-declaration and if so does it run after step 3 and after step 4, or just after step 4, or something else? This is observable via mutation observers.

Or does it run at all? I'm pretty sure that in browsers mutating the inline style via CSSOM does NOT do a serialize-and-reparse thing. And this is black-box distinguishable (in browsers; not sure about per spec, because the processing model for this stuff is somewhat underdefined in various other ways) from doing the serialize-and-reparse, as far as I can tell, if base URIs are changed.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions