- From: Charles Pritchard <chuck@jumis.com>
- Date: Sat, 17 Sep 2011 11:36:49 -0700
- To: Sebastian Markbåge <sebastian@calyptus.eu>
- CC: "Tab Atkins Jr." <jackalmage@gmail.com>, www-style@w3.org
- Message-ID: <4E74E8C1.8080006@jumis.com>
On 9/17/11 10:34 AM, Sebastian Markbåge wrote:
> On Fri, Sep 16, 2011 at 12:30 AM, Tab Atkins Jr. <jackalmage@gmail.com
> <mailto:jackalmage@gmail.com>> wrote:
>
> On Mon, Sep 12, 2011 at 9:14 AM, Sebastian Markbåge
> <sebastian@calyptus.eu <mailto:sebastian@calyptus.eu>> wrote:
> > It has been brought up before. Complex curve animation tend to
> be very
> > difficult to do with CSS and requires a very verbose syntax,
> which is
> > impossible to handcode and read.
> > I describe this in this blog post about converting SVG's
> animateMotion
> > element into CSS
> > keyframes. http://blog.calyptus.eu/seb/2011/09/csspathanimation/
> >
> > I propose an alternative method to specify a motion animation.
> > @motion 'identifier' {
> > path: 'm0,0 l100,0 c100,0 100,0 100,100';
> > }
> > The declared motion can contain a "path" property which consists
> of an SVG
> > style path declaration.
> > This motion is applied to an element using:
> > animation-name: 'identifier';
> > An additional CSS3 Transform is applied to the element based on
> the angles
> > of the path. This works the same way as SVG's animateMotion.
> > The timing function would be applied to the full animation as a
> whole.
> > The "path" property can be extended with specialized properties.
> > "path-data" - the SVG style path data.
> > "path-rotate" - defines how the element is rotated along the path.
>
> I definitely like the idea behind this proposal. Doing path
> transforms is freaking impossible right now. I think we can come up
> with a better syntax, but overall, using SVG paths to succinctly
> express a transform is a great idea.
>
> Maybe 'path' or 'motion' can just be a special property only usable in
> @keyframes? That way you can space out parts of the motion over
> different lengths of time within the animation.
>
> ~TJ
>
>
> That's a great idea. Having only the path makes it difficult to
> control the speed at different places. You could also change the
> timing function at different lengths.
>
SVG 2.0 has been discussing the addition of Catmull-Rom splines to the
mix. They're quite a bit easier to use, when manually coding than are
cubic beziers.
While we're looking at adopting <path> into CSS, it might be a good time
to add these author-friendly splines.
Received on Saturday, 17 September 2011 18:37:14 UTC