diff --git a/cssom-1/Overview.bs b/cssom-1/Overview.bs index 2937133f40b..8d5b298b097 100644 --- a/cssom-1/Overview.bs +++ b/cssom-1/Overview.bs @@ -2157,6 +2157,7 @@ The setProperty(property, va Note: value can not include "!important".
  • If component value list is null terminate these steps. +
  • Queue a mutation record for declarations change with the list of declarations being the declarations.
  • If property is a shorthand property, then for each longhand property longhand that property maps to, in canonical order, set the CSS declaration longhand with the appropriate value(s) from component value list, with the important flag set if priority is not the empty string, and unset otherwise, and with the list of declarations being the @@ -2179,6 +2180,16 @@ a list of declarations declarations, follow these steps: Otherwise, unset declaration's important flag. +To queue a mutation record for declarations change for a list of declarations declarations, follow these steps: + +
      +
    1. Let owner node be declarations's owner node. +
    2. If owner node is null, terminate these steps. +
    3. Let oldValue be the result of serializing declarations. +
    4. queue a mutation record of "attributes" for owner node with name "style", + namespace owner node's namespace, and oldValue oldValue. +
    + The setPropertyValue(property, value) method must run these steps:
      @@ -2197,6 +2208,7 @@ steps: Note: value can not include "!important".
    1. If component value list is null terminate these steps. +
    2. Queue a mutation record for declarations change with the list of declarations being the declarations.
    3. If property is a shorthand property, then for each longhand property longhand that property maps to, in canonical order, set the CSS declaration value longhand to the appropriate value(s) from component value list, and with the list of declarations being the declarations. @@ -2227,6 +2239,7 @@ these steps:
  • If priority is not the empty string and is not an ASCII case-insensitive match for the string "important", terminate this algorithm. +
  • Queue a mutation record for declarations change with the list of declarations being the declarations.
  • If property is a shorthand property, then for each longhand property longhand that property maps to, in canonical order, set the CSS declaration priority longhand with the important flag set if priority is not the empty string, and unset otherwise, and with the list of declarations being the @@ -2255,11 +2268,25 @@ The removeProperty(property)property be property converted to ASCII lowercase.
  • Let value be the return value of invoking {{CSSStyleDeclaration/getPropertyValue()}} with property as argument. -
  • If property is a shorthand property, for each longhand property longhand that property maps to, invoke - {{CSSStyleDeclaration/removeProperty()}} with longhand as argument. -
  • Otherwise, if property is a case-sensitive match for a +
  • If property is a shorthand property, follow these substeps: +
      +
    1. Set queued mutation record to false. +
    2. For each longhand property longhand that property maps to: +
        +
      1. If longhand is not the property name of a CSS declaration + in the declarations, continue. +
      2. If queued mutation record is false, set queued mutation record to true, and + queue a mutation record for declarations change with the list of declarations being the declarations. +
      3. Remove that CSS declaration. +
      +
    +
  • Otherwise, if property is a case-sensitive match for the property name of a CSS declaration in the - declarations, remove that CSS declaration. + declarations, follow these substeps: +
      +
    1. Queue a mutation record for declarations change with the list of declarations being the declarations. +
    2. Remove that CSS declaration. +
  • Return value.