jquery-mobile/css/structure/jquery.mobile.transitions.flip.css
2012-01-10 12:50:21 +07:00

98 lines
3.1 KiB
CSS

/* The properties in this rule are only necessary for the 'flip' transition.
* We need specify the perspective to create a projection matrix. This will add
* some depth as the element flips. The depth number represents the distance of
* the viewer from the z-plane. According to the CSS3 spec, 1000 is a moderate
* value.
*/
.ui-supported-csstransform3d .viewport-flip {
-webkit-perspective: 1000;
-moz-perspective: 1000;
position: absolute;
}
.ui-supported-csstransform3d .flip {
-webkit-backface-visibility:hidden;
-webkit-transform:translateX(0); /* Needed to work around an iOS 3.1 bug that causes listview thumbs to disappear when -webkit-visibility:hidden is used. */
-moz-backface-visibility:hidden;
-moz-transform:translateX(0); /* Needed to work around an iOS 3.1 bug that causes listview thumbs to disappear when -webkit-visibility:hidden is used. */
}
.ui-supported-csstransform3d .flip.out {
-webkit-transform: rotateY(-90deg) scale(.9);
-webkit-animation-name: flipouttoleft;
-moz-transform: rotateY(-90deg) scale(.9);
-moz-animation-name: flipouttoleft;
}
.ui-supported-csstransform3d .flip.in {
-webkit-animation-name: flipintoright;
-moz-animation-name: flipintoright;
}
.ui-supported-csstransform3d .flip.out.reverse {
-webkit-transform: rotateY(90deg) scale(.9);
-webkit-animation-name: flipouttoright;
-moz-transform: rotateY(90deg) scale(.9);
-moz-animation-name: flipouttoright;
}
.ui-supported-csstransform3d .flip.in.reverse {
-webkit-animation-name: flipintoleft;
-moz-animation-name: flipintoleft;
}
@-webkit-keyframes flipouttoleft {
from { -webkit-transform: rotateY(0); }
to { -webkit-transform: rotateY(-90deg) scale(.9); }
}
@-moz-keyframes flipouttoleft {
from { -moz-transform: rotateY(0); }
to { -moz-transform: rotateY(-90deg) scale(.9); }
}
@-webkit-keyframes flipouttoright {
from { -webkit-transform: rotateY(0) ; }
to { -webkit-transform: rotateY(90deg) scale(.9); }
}
@-moz-keyframes flipouttoright {
from { -moz-transform: rotateY(0); }
to { -moz-transform: rotateY(90deg) scale(.9); }
}
@-webkit-keyframes flipintoleft {
from { -webkit-transform: rotateY(-90deg) scale(.9); }
to { -webkit-transform: rotateY(0); }
}
@-moz-keyframes flipintoleft {
from { -moz-transform: rotateY(-90deg) scale(.9); }
to { -moz-transform: rotateY(0); }
}
@-webkit-keyframes flipintoright {
from { -webkit-transform: rotateY(90deg) scale(.9); }
to { -webkit-transform: rotateY(0); }
}
@-moz-keyframes flipintoright {
from { -moz-transform: rotateY(90deg) scale(.9); }
to { -moz-transform: rotateY(0); }
}
/* for non-3d supporting browsers, fallback to fade */
.ui-unsupported-csstransform3d .flip.out,
.ui-unsupported-csstransform3d .flip.out.reverse {
opacity: 0;
-webkit-animation-duration: 150ms;
-webkit-animation-name: fadeout;
-moz-animation-duration: 150ms;
-moz-animation-name: fadeout;
}
.ui-unsupported-csstransform3d .flip.in,
.ui-unsupported-csstransform3d .flip.in.reverse {
opacity: 1;
-webkit-animation-duration: 300ms;
-webkit-animation-name: fadein;
-moz-animation-duration: 300ms;
-moz-animation-name: fadein;
}