loader.html 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377
  1. <style type="text/css">
  2. html, body {
  3. background: white;
  4. width: 100%;
  5. height: 100%;
  6. margin: 0;
  7. padding: 0;
  8. }
  9. .loader {
  10. position: absolute;
  11. width: 15rem;
  12. height: 15rem;
  13. left: 50%;
  14. top: 50%;
  15. -moz-transform: translateX(-50%) translateY(-50%) rotate(-90deg) scaleX(-1);
  16. -ms-transform: translateX(-50%) translateY(-50%) rotate(-90deg) scaleX(-1);
  17. -webkit-transform: translateX(-50%) translateY(-50%) rotate(-90deg) scaleX(-1);
  18. transform: translateX(-50%) translateY(-50%) rotate(-90deg) scaleX(-1);
  19. }
  20. .loader div {
  21. position: absolute;
  22. left: 0;
  23. width: 0.5rem;
  24. height: 0.5rem;
  25. background: white;
  26. border-radius: 1rem;
  27. opacity: 0;
  28. }
  29. .loader div:nth-child(1) {
  30. top: 0rem;
  31. background: #ffdd00;
  32. -moz-animation: dna_rotate 2s 0s infinite ease-in-out;
  33. -webkit-animation: dna_rotate 2s 0s infinite ease-in-out;
  34. animation: dna_rotate 2s 0s infinite ease-in-out;
  35. }
  36. .loader div:nth-child(2) {
  37. top: 0.6rem;
  38. background: black;
  39. -moz-animation: dna_rotate 2s 1.1s infinite ease-in-out;
  40. -webkit-animation: dna_rotate 2s 1.1s infinite ease-in-out;
  41. animation: dna_rotate 2s 1.1s infinite ease-in-out;
  42. }
  43. .loader div:nth-child(3) {
  44. top: 1.2rem;
  45. background: #ffdd00;
  46. -moz-animation: dna_rotate 2s 0.2s infinite ease-in-out;
  47. -webkit-animation: dna_rotate 2s 0.2s infinite ease-in-out;
  48. animation: dna_rotate 2s 0.2s infinite ease-in-out;
  49. }
  50. .loader div:nth-child(4) {
  51. top: 1.8rem;
  52. background: black;
  53. -moz-animation: dna_rotate 2s 1.3s infinite ease-in-out;
  54. -webkit-animation: dna_rotate 2s 1.3s infinite ease-in-out;
  55. animation: dna_rotate 2s 1.3s infinite ease-in-out;
  56. }
  57. .loader div:nth-child(5) {
  58. top: 2.4rem;
  59. background: #ffdd00;
  60. -moz-animation: dna_rotate 2s 0.4s infinite ease-in-out;
  61. -webkit-animation: dna_rotate 2s 0.4s infinite ease-in-out;
  62. animation: dna_rotate 2s 0.4s infinite ease-in-out;
  63. }
  64. .loader div:nth-child(6) {
  65. top: 3rem;
  66. background: black;
  67. -moz-animation: dna_rotate 2s 1.5s infinite ease-in-out;
  68. -webkit-animation: dna_rotate 2s 1.5s infinite ease-in-out;
  69. animation: dna_rotate 2s 1.5s infinite ease-in-out;
  70. }
  71. .loader div:nth-child(7) {
  72. top: 3.6rem;
  73. background: #ffdd00;
  74. -moz-animation: dna_rotate 2s 0.6s infinite ease-in-out;
  75. -webkit-animation: dna_rotate 2s 0.6s infinite ease-in-out;
  76. animation: dna_rotate 2s 0.6s infinite ease-in-out;
  77. }
  78. .loader div:nth-child(8) {
  79. top: 4.2rem;
  80. background: black;
  81. -moz-animation: dna_rotate 2s 1.7s infinite ease-in-out;
  82. -webkit-animation: dna_rotate 2s 1.7s infinite ease-in-out;
  83. animation: dna_rotate 2s 1.7s infinite ease-in-out;
  84. }
  85. .loader div:nth-child(9) {
  86. top: 4.8rem;
  87. background: #ffdd00;
  88. -moz-animation: dna_rotate 2s 0.8s infinite ease-in-out;
  89. -webkit-animation: dna_rotate 2s 0.8s infinite ease-in-out;
  90. animation: dna_rotate 2s 0.8s infinite ease-in-out;
  91. }
  92. .loader div:nth-child(10) {
  93. top: 5.4rem;
  94. background: black;
  95. -moz-animation: dna_rotate 2s 1.9s infinite ease-in-out;
  96. -webkit-animation: dna_rotate 2s 1.9s infinite ease-in-out;
  97. animation: dna_rotate 2s 1.9s infinite ease-in-out;
  98. }
  99. .loader div:nth-child(11) {
  100. top: 6rem;
  101. background: #ffdd00;
  102. -moz-animation: dna_rotate 2s 1s infinite ease-in-out;
  103. -webkit-animation: dna_rotate 2s 1s infinite ease-in-out;
  104. animation: dna_rotate 2s 1s infinite ease-in-out;
  105. }
  106. .loader div:nth-child(12) {
  107. top: 6.6rem;
  108. background: black;
  109. -moz-animation: dna_rotate 2s 2.1s infinite ease-in-out;
  110. -webkit-animation: dna_rotate 2s 2.1s infinite ease-in-out;
  111. animation: dna_rotate 2s 2.1s infinite ease-in-out;
  112. }
  113. .loader div:nth-child(13) {
  114. top: 7.2rem;
  115. background: #ffdd00;
  116. -moz-animation: dna_rotate 2s 1.2s infinite ease-in-out;
  117. -webkit-animation: dna_rotate 2s 1.2s infinite ease-in-out;
  118. animation: dna_rotate 2s 1.2s infinite ease-in-out;
  119. }
  120. .loader div:nth-child(14) {
  121. top: 7.8rem;
  122. background: black;
  123. -moz-animation: dna_rotate 2s 2.3s infinite ease-in-out;
  124. -webkit-animation: dna_rotate 2s 2.3s infinite ease-in-out;
  125. animation: dna_rotate 2s 2.3s infinite ease-in-out;
  126. }
  127. .loader div:nth-child(15) {
  128. top: 8.4rem;
  129. background: #ffdd00;
  130. -moz-animation: dna_rotate 2s 1.4s infinite ease-in-out;
  131. -webkit-animation: dna_rotate 2s 1.4s infinite ease-in-out;
  132. animation: dna_rotate 2s 1.4s infinite ease-in-out;
  133. }
  134. .loader div:nth-child(16) {
  135. top: 9rem;
  136. background: black;
  137. -moz-animation: dna_rotate 2s 2.5s infinite ease-in-out;
  138. -webkit-animation: dna_rotate 2s 2.5s infinite ease-in-out;
  139. animation: dna_rotate 2s 2.5s infinite ease-in-out;
  140. }
  141. .loader div:nth-child(17) {
  142. top: 9.6rem;
  143. background: #ffdd00;
  144. -moz-animation: dna_rotate 2s 1.6s infinite ease-in-out;
  145. -webkit-animation: dna_rotate 2s 1.6s infinite ease-in-out;
  146. animation: dna_rotate 2s 1.6s infinite ease-in-out;
  147. }
  148. .loader div:nth-child(18) {
  149. top: 10.2rem;
  150. background: black;
  151. -moz-animation: dna_rotate 2s 2.7s infinite ease-in-out;
  152. -webkit-animation: dna_rotate 2s 2.7s infinite ease-in-out;
  153. animation: dna_rotate 2s 2.7s infinite ease-in-out;
  154. }
  155. .loader div:nth-child(19) {
  156. top: 10.8rem;
  157. background: #ffdd00;
  158. -moz-animation: dna_rotate 2s 1.8s infinite ease-in-out;
  159. -webkit-animation: dna_rotate 2s 1.8s infinite ease-in-out;
  160. animation: dna_rotate 2s 1.8s infinite ease-in-out;
  161. }
  162. .loader div:nth-child(20) {
  163. top: 11.4rem;
  164. background: black;
  165. -moz-animation: dna_rotate 2s 2.9s infinite ease-in-out;
  166. -webkit-animation: dna_rotate 2s 2.9s infinite ease-in-out;
  167. animation: dna_rotate 2s 2.9s infinite ease-in-out;
  168. }
  169. .loader div:nth-child(21) {
  170. top: 12rem;
  171. background: #ffdd00;
  172. -moz-animation: dna_rotate 2s 2s infinite ease-in-out;
  173. -webkit-animation: dna_rotate 2s 2s infinite ease-in-out;
  174. animation: dna_rotate 2s 2s infinite ease-in-out;
  175. }
  176. .loader div:nth-child(22) {
  177. top: 12.6rem;
  178. background: black;
  179. -moz-animation: dna_rotate 2s 3.1s infinite ease-in-out;
  180. -webkit-animation: dna_rotate 2s 3.1s infinite ease-in-out;
  181. animation: dna_rotate 2s 3.1s infinite ease-in-out;
  182. }
  183. .loader div:nth-child(23) {
  184. top: 13.2rem;
  185. background: #ffdd00;
  186. -moz-animation: dna_rotate 2s 2.2s infinite ease-in-out;
  187. -webkit-animation: dna_rotate 2s 2.2s infinite ease-in-out;
  188. animation: dna_rotate 2s 2.2s infinite ease-in-out;
  189. }
  190. .loader div:nth-child(24) {
  191. top: 13.8rem;
  192. background: black;
  193. -moz-animation: dna_rotate 2s 3.3s infinite ease-in-out;
  194. -webkit-animation: dna_rotate 2s 3.3s infinite ease-in-out;
  195. animation: dna_rotate 2s 3.3s infinite ease-in-out;
  196. }
  197. .loader div:nth-child(25) {
  198. top: 14.4rem;
  199. background: #ffdd00;
  200. -moz-animation: dna_rotate 2s 2.4s infinite ease-in-out;
  201. -webkit-animation: dna_rotate 2s 2.4s infinite ease-in-out;
  202. animation: dna_rotate 2s 2.4s infinite ease-in-out;
  203. }
  204. .loader div:nth-child(26) {
  205. top: 15rem;
  206. background: black;
  207. -moz-animation: dna_rotate 2s 3.5s infinite ease-in-out;
  208. -webkit-animation: dna_rotate 2s 3.5s infinite ease-in-out;
  209. animation: dna_rotate 2s 3.5s infinite ease-in-out;
  210. }
  211. @-moz-keyframes dna_rotate {
  212. 0% {
  213. opacity: 1;
  214. -moz-transform: scale(1);
  215. transform: scale(1);
  216. left: 40%;
  217. z-index: 0;
  218. }
  219. 25% {
  220. opacity: 1;
  221. -moz-transform: scale(1.8);
  222. transform: scale(1.8);
  223. }
  224. 50% {
  225. opacity: 1;
  226. left: 60%;
  227. z-index: 1;
  228. -moz-transform: scale(1);
  229. transform: scale(1);
  230. }
  231. 75% {
  232. opacity: 1;
  233. -moz-transform: scale(0.5);
  234. transform: scale(0.5);
  235. }
  236. 100% {
  237. opacity: 1;
  238. left: 40%;
  239. z-index: 0;
  240. -moz-transform: scale(1);
  241. transform: scale(1);
  242. }
  243. }
  244. @-webkit-keyframes dna_rotate {
  245. 0% {
  246. opacity: 1;
  247. -webkit-transform: scale(1);
  248. transform: scale(1);
  249. left: 40%;
  250. z-index: 0;
  251. }
  252. 25% {
  253. opacity: 1;
  254. -webkit-transform: scale(1.8);
  255. transform: scale(1.8);
  256. }
  257. 50% {
  258. opacity: 1;
  259. left: 60%;
  260. z-index: 1;
  261. -webkit-transform: scale(1);
  262. transform: scale(1);
  263. }
  264. 75% {
  265. opacity: 1;
  266. -webkit-transform: scale(0.5);
  267. transform: scale(0.5);
  268. }
  269. 100% {
  270. opacity: 1;
  271. left: 40%;
  272. z-index: 0;
  273. -webkit-transform: scale(1);
  274. transform: scale(1);
  275. }
  276. }
  277. @keyframes dna_rotate {
  278. 0% {
  279. opacity: 1;
  280. -moz-transform: scale(1);
  281. -ms-transform: scale(1);
  282. -webkit-transform: scale(1);
  283. transform: scale(1);
  284. left: 40%;
  285. z-index: 0;
  286. }
  287. 25% {
  288. opacity: 1;
  289. -moz-transform: scale(1.8);
  290. -ms-transform: scale(1.8);
  291. -webkit-transform: scale(1.8);
  292. transform: scale(1.8);
  293. }
  294. 50% {
  295. opacity: 1;
  296. left: 60%;
  297. z-index: 1;
  298. -moz-transform: scale(1);
  299. -ms-transform: scale(1);
  300. -webkit-transform: scale(1);
  301. transform: scale(1);
  302. }
  303. 75% {
  304. opacity: 1;
  305. -moz-transform: scale(0.5);
  306. -ms-transform: scale(0.5);
  307. -webkit-transform: scale(0.5);
  308. transform: scale(0.5);
  309. }
  310. 100% {
  311. opacity: 1;
  312. left: 40%;
  313. z-index: 0;
  314. -moz-transform: scale(1);
  315. -ms-transform: scale(1);
  316. -webkit-transform: scale(1);
  317. transform: scale(1);
  318. }
  319. }
  320. </style>
  321. <div class='loader'>
  322. <div></div>
  323. <div></div>
  324. <div></div>
  325. <div></div>
  326. <div></div>
  327. <div></div>
  328. <div></div>
  329. <div></div>
  330. <div></div>
  331. <div></div>
  332. <div></div>
  333. <div></div>
  334. <div></div>
  335. <div></div>
  336. <div></div>
  337. <div></div>
  338. <div></div>
  339. <div></div>
  340. <div></div>
  341. <div></div>
  342. <div></div>
  343. <div></div>
  344. <div></div>
  345. <div></div>
  346. <div></div>
  347. <div></div>
  348. </div>