The 530+ classes that derive from CSSPropertyAPI fall neatly into two groups: longhands and shorthands. Those two groups share little functionality, but there is no class structure to separate them.
We should restructure the inheritance tree rooted at CSSPropertyAPI so that it is more descriptive & navigable, and doesn’t share functionality between subclasses unnecessarily.
New structure will be
CSSPropertyAPI
CSSLonghandAPI
CSSShorthandAPI
NB: There is also a plan to rename CSSPropertyAPI to CSSProperty. Its subclasses will then be called CSSLonghand & CSSShorthand.
Comment 1 by rjwright@chromium.org
, Oct 31 2017