|
29 | 29 |
|
30 | 30 | <h1>CSS Transitions Module Level 3</h1> |
31 | 31 |
|
32 | | - <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft 17 November |
| 32 | + <h2 class="no-num no-toc" id=longstatus-date>Editor's Draft 18 November |
33 | 33 | 2009</h2> |
34 | 34 |
|
35 | 35 | <dl> |
36 | 36 | <dt>This version: |
37 | 37 |
|
38 | | - <dd> <a href="http://www.w3.org/TR/2009/ED-css3-transitions-20091117"> |
| 38 | + <dd> <a href="http://www.w3.org/TR/2009/ED-css3-transitions-20091118"> |
39 | 39 | http://dev.w3.org/csswg/css3-transitions/</a> |
40 | | - <!--http://www.w3.org/TR/2009/WD-css3-transitions-20091117--> |
| 40 | + <!--http://www.w3.org/TR/2009/WD-css3-transitions-20091118--> |
41 | 41 |
|
42 | 42 | <dt>Latest version: |
43 | 43 |
|
@@ -710,25 +710,42 @@ <h2 id=reversing><span class=secno>3 </span> Automatically reversing |
710 | 710 | the expected behavior is that the new transition should be the reverse of |
711 | 711 | what has already executed. |
712 | 712 |
|
713 | | - <p> If a currently executing transition is interrupted and the |
714 | | - transitioning property value is set to the original starting value for the |
715 | | - interrupted transition, and no other transition-related properties have |
716 | | - changed, then the new transition should be the reverse of the interrupted |
717 | | - transition. The new transition will execute with a duration that is the |
718 | | - elapsed time of the interrupted transition at the moment it was |
719 | | - interrupted. The timing function for the new transition will be the |
720 | | - portion of the curve traversed up to the point of reversal, followed in |
721 | | - the opposite direction to the starting point. The new transition will not |
722 | | - begin with a delay, even if one was specified. If the existing transition |
723 | | - was interrupted during its delay period, the new transition will execute |
724 | | - instantly. |
| 713 | + <p> If a running transition with duration T, executing so far for duration |
| 714 | + TE, from state A, to state B, is interrupted by a property change that |
| 715 | + would start a new transition back to state A, and all the transition |
| 716 | + attributes are the same (duration, delay and timing function), then the |
| 717 | + new transition must reverse the effect. The new transition must: |
| 718 | + |
| 719 | + <ol> |
| 720 | + <li> Use the B and A states as its "from" and "to" states respectively. It |
| 721 | + does not use the current value as its from state, due to the rules below. |
| 722 | + |
| 723 | + |
| 724 | + <li> Execute with the same duration T, but starting as if the transition |
| 725 | + had already begun, without any transition delay, at the moment which |
| 726 | + would cause the new transition to finish in TE from the moment of |
| 727 | + interruption. In other words, the new transition will execute as if it |
| 728 | + started T-TE in the past. |
| 729 | + |
| 730 | + <li> Use a timing function that is the portion of the curve traversed up |
| 731 | + to the moment of interruption, followed in the opposite direction |
| 732 | + (towards the starting point). This will make the transition appear as if |
| 733 | + it is playing backwards. |
| 734 | + |
| 735 | + <li> Ignore any transition delay. |
| 736 | + </ol> |
725 | 737 |
|
726 | 738 | <p> For example, suppose there is a transition with a duration of two |
727 | 739 | seconds. If this transition is interrupted after 0.5 seconds and the |
728 | 740 | property value assigned to the original value, then the new transition |
729 | 741 | effect will be the reverse of the original, as if it had begun 1.5 seconds |
730 | 742 | in the past. |
731 | 743 |
|
| 744 | + <p> Note that by using the defined from and to states for the reversing |
| 745 | + transition, it is also possible that it may reverse again, if interrupted; |
| 746 | + for example, if the transition reversing to state A was again interrupted |
| 747 | + by a property change to state B. |
| 748 | + |
732 | 749 | <h2 id=transition-events-><span class=secno>4 </span> Transition Events</h2> |
733 | 750 |
|
734 | 751 | <p> The completion of a CSS Transition generates a corresponding <a |
|
0 commit comments