Re: CSS Animations Targeting SVG attributes

On Mon, Mar 14, 2011 at 7:02 PM, Robert O'Callahan <robert@ocallahan.org> wrote:
> No, that's a partial list of attributes Patrick suggested should be
> supported "initially".
>
> To compare these proposals, we need to consider the entire set of animatable
> SVG attlributes, discard any which we agree will *never* need to be
> animatable via CSS, and consider the cost of promoting all of the rest to
> CSS properties --- because that's the state proposal #2 is aiming for.
> There's no benefit in promoting some subset now and some subset later; in
> fact that will be more confusing for authors.
>
> I think the best approach might be to promote *all* animatable SVG
> attributes to CSS properties, but I'm not sure yet. One problem is that in
> Gecko, and I think Webkit and other engines, mapping presentational
> attributes into style typically requires additional storage for internal
> "presentational CSS rules" and computed CSS style, so the footprint of
> element-heavy SVG pages could increase noticeably even if CSS animation is
> not used.

Okay, I've made a list of all the candidate SVG attributes at
<http://www.xanthir.com/etc/animatable-svg-attributes.html>.

I notably omitted:

1. All <filter> and related attributes
2. All <font-face> and related attributes
3. All *Units attributes
4. All on*, xlink:*, and xml:* attributes

#2 and #4 should be obvious and uncontroversial.  #3 was an accident -
I started removing them before realizing they were animatable, and
didn't feel like going back and re-adding the ones I'd already killed.
 There's like a half-dozen of them, and they'd all animate as
keywords.  #1 is the somewhat more controversial one, but as Dean said
in an earlier message, we'll be addressing Filters directly in CSS, so
we can likely postpone dealing with them in SVG for now.

So, this leaves us with a list of 41 attributes (plus the couple of
*Units attributes) which are animatable in SMIL and potentially
animatable as CSS properties.  Not all of them require new properties
- for example, the 3 transform attributes can probably just map
directly to the transform property in CSS.  Some of them we may not
want to animate in CSS at all (though I generally want all CSS
properties to be animatable, even the discrete ones, so I'd probably
want all of them on principle).

~TJ

Received on Tuesday, 15 March 2011 19:47:32 UTC