W3C home > Mailing lists > Public > www-style@w3.org > February 2011

[CSS3] transforms vs. transitions.

From: Andrew Fedoniouk <andrew.fedoniouk@live.com>
Date: Sat, 26 Feb 2011 16:08:45 -0800
Message-ID: <BLU159-ds112CA912744A025D668BE9F8DF0@phx.gbl>
To: <www-style@w3.org>
For the reference:
Transforms [2d] are defined here: http://www.w3.org/TR/css3-2d-transforms
Transitions are defined here: http://www.w3.org/TR/css3-transitions/

Consider this markup:

<div #container>
   <div .panel>1</div>
   <div .panel>2</div>

Designer's wish is to achieve rotating effect of these two children using 
Rough idea is like this:

    transform-scale: 0.25;
    transform-translate: -25% 0;

    transform-scale: 0.25;
    transform-translate: +25% 0;

   transition-property:   transform-scale  transform-translate;
   transition-timing-function:  ease-out linear;

But that is not quite possible at the moment as there are no independent
properties like 'transform-scale' or 'transform-translate' - only single 
'transform' aggregate
that defines all of them. But for the need of animations as in this case
we should have them separated so it will be able to apply different timing
functions to different components of the transform matrix.

I think it makes sense to split the 'transform' into atomic properties, at 
least on
'transform-scale', 'transform-translate', 'transform-skew' parts
and to left 'transform' as it is now but to declare it as a shorthand of 
these three.

And yet it is not clear why do we need that pretty controversial matrix() 
transform:matrix(<number>, <number>, <number>, <number>, <number>, <number>)
Exactly the same result can be achieved by using scale(), translate() and 
Why such a redundancy?

Andrew Fedoniouk

Received on Sunday, 27 February 2011 00:09:18 UTC

This archive was generated by hypermail 2.4.0 : Friday, 25 March 2022 10:07:56 UTC