mobilebone
Version:
Bone main for mobile web APP with a sigle page mode by using HTML5 history API router.
121 lines (112 loc) • 2.91 kB
CSS
/*!
* mobilebone.css
* by zhangxinxu(.com) 2014-09-26
* some necessary CSS for mobilebone.js
* good luck for U, ^_^
**/
body {
margin: 0;
}
/* construction */
html, body, .page {
height: 100%; width: 100%;
overflow: hidden;
}
.page {
position: absolute; left: 0; top: 0;
}
.page.out {
display: none;
}
.in, .out {
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
}
/* mask layer when ajax sending... */
[data-mask] {
position: relative;
}
.mask {
height: 100%; width: 100%;
background-color: rgba(255,255,255,.35);
position: absolute; left: 0; top: 0;
z-index: 9;
}
s.loading {
width: 16px; height: 16px;
border-radius: 100%;
border: 2px solid;
border-bottom-color: transparent;
-webkit-animation: spin 1s linear infinite;
animation: spin 1s linear infinite;
/*center*/
position: absolute;
top: 0; right: 0; bottom: 0; left: 0;
margin: auto;
}
/* Default animation - slide, you can visit 'src/mobilebone.aniamte.css' to get more styles of animation */
.slide.out, .slide.in {
-webkit-animation-timing-function: ease-out;
-webkit-animation-duration: 225ms;
animation-timing-function: ease-out;
animation-duration: 225ms;
}
.slide.in {
-webkit-animation-name: slideinfromright;
animation-name: slideinfromright;
}
.slide.out {
-webkit-animation-name: slideouttoleft;
animation-name: slideouttoleft;
}
.slide.reverse.out {
-webkit-animation-name: slideouttoright;
animation-name: slideouttoright;
}
.slide.reverse.in {
-webkit-animation-name: slideinfromleft;
animation-name: slideinfromleft;
}
/* keyframes for slidein from sides */
@-webkit-keyframes slideinfromright {
from { -webkit-transform: translate3d(100%,0,0); }
to { -webkit-transform: translate3d(0,0,0); }
}
@keyframes slideinfromright {
from { transform: translateX(100%); }
to { transform: translateX(0); }
}
@-webkit-keyframes slideinfromleft {
from { -webkit-transform: translate3d(-100%,0,0); }
to { -webkit-transform: translate3d(0,0,0); }
}
@keyframes slideinfromleft {
from { transform: translateX(-100%); }
to { transform: translateX(0); }
}
/* keyframes for slideout to sides */
@-webkit-keyframes slideouttoleft {
from { -webkit-transform: translate3d(0,0,0); }
to { -webkit-transform: translate3d(-100%,0,0); }
}
@keyframes slideouttoleft {
from { transform: translateX(0); }
to { transform: translateX(-100%); }
}
@-webkit-keyframes slideouttoright {
from { -webkit-transform: translate3d(0,0,0); }
to { -webkit-transform: translate3d(100%,0,0); }
}
@keyframes slideouttoright {
from { transform: translateX(0); }
to { transform: translateX(100%); }
}
/* chrysanthemum loading effect */
@-webkit-keyframes spin {
0% { -webkit-transform: rotate(0deg); }
100% { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}