_custom.scss 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289
  1. /* Custom Loader.CSS */
  2. .loader-container{
  3. position: absolute;
  4. top:50%;
  5. left: 50%;
  6. }
  7. // Double Bounce
  8. .double-bounce {
  9. width: 40px;
  10. height: 40px;
  11. position: relative;
  12. margin: 40px auto;
  13. .child {
  14. width: 100%;
  15. height: 100%;
  16. border-radius: 50%;
  17. background-color: #333;
  18. opacity: 0.6;
  19. position: absolute;
  20. top: 0;
  21. left: 0;
  22. animation: doubleBounce 2s infinite ease-in-out;
  23. }
  24. .double-bounce2 {
  25. animation-delay: -1.0s;
  26. }
  27. }
  28. @-webkit-keyframes doubleBounce {
  29. 0%, 100% {
  30. transform: scale(0); }
  31. 50% {
  32. transform: scale(1); } }
  33. @keyframes doubleBounce {
  34. 0%, 100% {
  35. transform: scale(0); }
  36. 50% {
  37. transform: scale(1); } }
  38. // Chasing Dots
  39. .chasing-dots {
  40. // margin: 40px auto;
  41. width: 40px;
  42. height: 40px;
  43. position: relative;
  44. text-align: center;
  45. animation: chasingDotsRotate 2s infinite linear;
  46. .child {
  47. width: 60%;
  48. height: 60%;
  49. display: inline-block;
  50. position: absolute;
  51. top: 0;
  52. background-color: #333;
  53. border-radius: 100%;
  54. animation: chasingDotsBounce 2s infinite ease-in-out;
  55. }
  56. .dot2 {
  57. top: auto;
  58. bottom: 0;
  59. animation-delay: -1s;
  60. }
  61. }
  62. @-webkit-keyframes chasingDotsRotate {
  63. 100% {
  64. transform: rotate(360deg); } }
  65. @keyframes chasingDotsRotate {
  66. 100% {
  67. transform: rotate(360deg); } }
  68. @-webkit-keyframes chasingDotsBounce {
  69. 0%, 100% {
  70. transform: scale(0); }
  71. 50% {
  72. transform: scale(1); } }
  73. @keyframes chasingDotsBounce {
  74. 0%, 100% {
  75. transform: scale(0); }
  76. 50% {
  77. transform: scale(1); } }
  78. // Cube Grid
  79. /*
  80. * Spinner positions
  81. * 1 2 3
  82. * 4 5 6
  83. * 7 8 9
  84. */
  85. .cube-grid {
  86. width: 40px;
  87. height: 40px;
  88. margin: 40px auto;
  89. .cube {
  90. width: 33.33%;
  91. height: 33.33%;
  92. background-color: #333;
  93. float: left;
  94. animation: cubeGridScaleDelay 1.3s infinite ease-in-out;
  95. }
  96. .cube1 {
  97. animation-delay: 0.2s; }
  98. .cube2 {
  99. animation-delay: 0.3s; }
  100. .cube3 {
  101. animation-delay: 0.4s; }
  102. .cube4 {
  103. animation-delay: 0.1s; }
  104. .cube5 {
  105. animation-delay: 0.2s; }
  106. .cube6 {
  107. animation-delay: 0.3s; }
  108. .cube7 {
  109. animation-delay: 0.0s; }
  110. .cube8 {
  111. animation-delay: 0.1s; }
  112. .cube9 {
  113. animation-delay: 0.2s; }
  114. }
  115. @-webkit-keyframes cubeGridScaleDelay {
  116. 0%, 70%, 100% {
  117. transform: scale3D(1, 1, 1); }
  118. 35% {
  119. transform: scale3D(0, 0, 1); } }
  120. @keyframes cubeGridScaleDelay {
  121. 0%, 70%, 100% {
  122. transform: scale3D(1, 1, 1); }
  123. 35% {
  124. transform: scale3D(0, 0, 1); } }
  125. // Fading Circle
  126. .fading-circle {
  127. margin: 40px auto;
  128. width: 40px;
  129. height: 40px;
  130. position: relative;
  131. .circle {
  132. width: 100%;
  133. height: 100%;
  134. position: absolute;
  135. left: 0;
  136. top: 0;
  137. &:before {
  138. content: '';
  139. display: block;
  140. margin: 0 auto;
  141. width: 15%;
  142. height: 15%;
  143. background-color: #333;
  144. border-radius: 100%;
  145. animation: circleFadeDelay 1.2s infinite ease-in-out both; }
  146. }
  147. .circle2 {
  148. transform: rotate(30deg);
  149. &:before {
  150. animation-delay: -1.1s; }
  151. }
  152. .circle3 {
  153. transform: rotate(60deg);
  154. &:before {
  155. animation-delay: -1s; }
  156. }
  157. .circle4 {
  158. transform: rotate(90deg);
  159. &:before {
  160. animation-delay: -0.9s; }
  161. }
  162. .circle5 {
  163. transform: rotate(120deg);
  164. &:before {
  165. animation-delay: -0.8s; }
  166. }
  167. .circle6 {
  168. transform: rotate(150deg);
  169. &:before {
  170. animation-delay: -0.7s; }
  171. }
  172. .circle7 {
  173. transform: rotate(180deg);
  174. &:before {
  175. animation-delay: -0.6s; }
  176. }
  177. .circle8 {
  178. transform: rotate(210deg);
  179. &:before {
  180. animation-delay: -0.5s; }
  181. }
  182. .circle9 {
  183. transform: rotate(240deg);
  184. &:before {
  185. animation-delay: -0.4s; }
  186. }
  187. .circle10 {
  188. transform: rotate(270deg);
  189. &:before {
  190. animation-delay: -0.3s; }
  191. }
  192. .circle11 {
  193. transform: rotate(300deg);
  194. &:before {
  195. animation-delay: -0.2s; }
  196. }
  197. .circle12 {
  198. transform: rotate(330deg);
  199. &:before {
  200. animation-delay: -0.1s; }
  201. }
  202. }
  203. @-webkit-keyframes circleFadeDelay {
  204. 0%, 39%, 100% {
  205. opacity: 0; }
  206. 40% {
  207. opacity: 1; } }
  208. @keyframes circleFadeDelay {
  209. 0%, 39%, 100% {
  210. opacity: 0; }
  211. 40% {
  212. opacity: 1; } }
  213. // Folding Cube
  214. .folding-cube {
  215. // margin: 40px auto;
  216. width: 40px;
  217. height: 40px;
  218. position: relative;
  219. transform: rotateZ(45deg);
  220. .cube {
  221. float: left;
  222. width: 50%;
  223. height: 50%;
  224. position: relative;
  225. transform: scale(1.1);
  226. &:before {
  227. content: '';
  228. position: absolute;
  229. top: 0;
  230. left: 0;
  231. width: 100%;
  232. height: 100%;
  233. background-color: #333;
  234. animation: foldCubeAngle 2.4s infinite linear both;
  235. transform-origin: 100% 100%;
  236. }
  237. }
  238. .cube2 {
  239. transform: scale(1.1) rotateZ(90deg);
  240. &:before {
  241. animation-delay: 0.3s; }
  242. }
  243. .cube3 {
  244. transform: scale(1.1) rotateZ(180deg);
  245. &:before {
  246. animation-delay: 0.6s; }
  247. }
  248. .cube4 {
  249. transform: scale(1.1) rotateZ(270deg);
  250. &:before {
  251. animation-delay: 0.9s; }
  252. }
  253. }
  254. @-webkit-keyframes foldCubeAngle {
  255. 0%, 10% {
  256. transform: perspective(140px) rotateX(-180deg);
  257. opacity: 0; }
  258. 25%, 75% {
  259. transform: perspective(140px) rotateX(0deg);
  260. opacity: 1; }
  261. 90%, 100% {
  262. transform: perspective(140px) rotateY(180deg);
  263. opacity: 0; } }
  264. @keyframes foldCubeAngle {
  265. 0%, 10% {
  266. transform: perspective(140px) rotateX(-180deg);
  267. opacity: 0; }
  268. 25%, 75% {
  269. transform: perspective(140px) rotateX(0deg);
  270. opacity: 1; }
  271. 90%, 100% {
  272. transform: perspective(140px) rotateY(180deg);
  273. opacity: 0; } }