Fix up CSSStyleDeclaration::cssText serialization
This patch fixes up CSSStyleDeclaration::cssText serialization in
several ways:
- Removes switch statement and just defers to getPropertyValue. This will
allow us to move generic checks (e.g. for initial) up so individual
shorthand serialization routines don't need to handle it.
- Supports all shorthands (except font) now. This adds support for
marker, columns, column-rule, font-variant, -webkit-margin-collapse,
-webkit-mask-repeat, -webkit-text-stroke.
- Support serialization as border-top/bottom/left/right. Currently we
only use border and border-width/color/style. As per CSSOM, we
prefer (e.g.) border-width to border-top as it has more longhands.
- Avoid serializing border-image when border is serialized as
border-image is a reset-only sub-property (but border serialization
still fails to require border-image to be correctly set).
https://www.w3.org/TR/cssom-1/#concept-shorthands-preferred-order
BUG=612363
Review-Url: https://codereview.chromium.org/1984163002
Cr-Commit-Position: refs/heads/master@{#394653}
8 files changed