[css3-transitions][css3-animations] Transitioning and animating the visibility property

The latest editor's draft for CSS3 Transitions still define the animation 
of visibility as:

# visibility: interpolated via a discrete step. The interpolation happens 
# in real number space between 0 and 1, where 1 is "visible" and all other 
# values are "hidden".

This is not what Firefox 4 or Chrome 12 currently do. And it was agreed
some time ago [2] that this is not what they should do. Instead, all 
values that are not 0 count as visible and 0 maps to hidden.

This leaves us with the collapse value and how to transition it from/to
visible and hidden. As collapse maps to hidden for elements other than
rows, row groups etc Firefox treats visible as non-zero and collapse as 0.
When transitioning from hidden to collapse, however, hidden is non-zero 
and collapse is 0.

So:
- Between visible and hidden: hidden==0, 0 < visible <= 1
- Between visible and collapse: collapse==0, 0 < visible <= 1
- Between hidden and collapse: collapse==0, 0 < hidden <= 1

Which seems reasonable enough. The interesting part, however, is that hidden 
maps to either 0 or non-zero values depending on the value you're transitioning
to/from. So the fun question now is: what should happen when a hidden animation 
frame is sandwiched between a visible frame and a collapse frame?


[1] http://dev.w3.org/csswg/css3-transitions/#animation-of-property-types-
[2] http://lists.w3.org/Archives/Public/www-style/2009Nov/0346.html

Received on Thursday, 28 April 2011 23:49:24 UTC