PluginProbe
LoftLoader / 2.3.2
LoftLoader v2.3.2
trunk 1.0.0 1.0.1 1.0.2 2.0.0 2.1.0 2.1.1 2.1.10 2.1.11 2.1.12 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2.0 2.2.1 2.2.2 2.3 2.3.1 2.3.2 2.3.3 All 34 releases
loftloader / assets / scss / loftloader.scss

loftloader.scss in LoftLoader 2.3.2, at assets/scss/loftloader.scss

534 lines 12.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /**
2 * LoftLoader Lite Frontend Style
3 *
4 * Plugin Name: LoftLoader
5 * Plugin URI: http://www.loftocean.com/loftloader
6 * Author: Kaylolo Yinxi Chen @Loft.Ocean
7 * Author URI: http://www.loftocean.com
8 * Description: LoftLoader (Lite Version) is a plugin for adding beautiful and smooth preload animation to your WordPress website. With setting options, you can choose from preset animations, add custom logo image, choose colours to match your branding, and amuse and impress your visitors while loading site content.
9 * Version: 2.3.2
10 */
11
12 $primary-color: #248acc;
13
14 @import 'loftloader-animation';
15 @import 'loftloader-mixins';
16
17 html,
18 body {
19 opacity: 1 !important; //Prevent site content from being hidden by other plugins before their code get fully loaded.
20 }
21
22 #loftloader-wrapper {
23 position: fixed;
24 top: 0;
25 left: 0;
26 @include transform(translateX(0));
27 z-index: 999999;
28 width: 100%;
29 height: 100%;
30 background: transparent !important;
31
32 // After the page content has been loaded:
33 .loaded & {
34 @include transform(translateX(-200%));
35 visibility: hidden;
36 pointer-events: none;
37 transition: all;
38 transition-delay: 1s;
39
40 &.slide-vertical {
41 @include verticalend;
42 }
43
44 // Hide the preloader elements
45 #loader,
46 .loader-close-button {
47 @include endLoader;
48 }
49 }
50
51 .loader-inner {
52 position: absolute;
53 top: 50%;
54 left: 50%;
55 @include transform(translate(-50%, -50%));
56 z-index: 1001;
57 text-align: center;
58 transition: all 0s;
59 font-size: 0;
60
61 #loader {
62 position: relative;
63 z-index: 1002;
64 top: auto;
65 left: auto;
66 display: inline-block;
67 margin: 0 auto;
68 padding: 0;
69 border: none;
70 border-radius: 0;
71 background: none !important;
72 color: $primary-color;
73 }
74 }
75
76 // LoftLoader Background
77 .loader-section {
78 position: fixed;
79 z-index: 999;
80 width: 50%;
81 height: 100%;
82 background: #000;
83 opacity: 0.95;
84 transition: all 0s;
85 will-change: transform;
86
87 //Fade
88 &.section-fade {
89 top: 0;
90 left: 0;
91 width: 100%;
92 will-change: opacity;
93
94 .loaded & {
95 @include endBgFade;
96 }
97 }
98
99 //Slide Up
100 &.section-slide-up {
101 top: 0;
102 left: 0;
103 width: 100%;
104
105 .loaded & {
106 @include endBgUp;
107 }
108 }
109
110 //Split Horizontally
111 &.section-left,
112 &.section-right {
113 top: 0;
114 }
115
116 &.section-left {
117 left: 0;
118
119 .loaded & {
120 @include endBgSplitLeft;
121 }
122 }
123
124 &.section-right {
125 right: 0;
126
127 .loaded & {
128 @include endBgSplitRight;
129 }
130 }
131
132 //Split Vertically
133 &.section-up,
134 &.section-down {
135 left: 0;
136 width: 100%;
137 height: 50%;
138 }
139
140 &.section-up {
141 top: 0;
142
143 .loaded & {
144 @include endBgSplitUp;
145 }
146 }
147
148 &.section-down {
149 bottom: 0;
150
151 .loaded & {
152 @include endBgSplitDown;
153 }
154 }
155 }
156 }
157
158
159 /* ==========================================================================
160 Loading - Spinning Sun
161 ========================================================================== */
162
163 #loftloader-wrapper.pl-sun {
164 #loader {
165 width: 50px;
166 height: 50px;
167
168 span {
169 position: absolute;
170 top: 0;
171 left: 0;
172 display: block;
173 width: 50px;
174 height: 50px;
175 background: currentColor;
176 opacity: 0.9;
177 transform-origin: 50% 50%;
178 @include animation(spinReturn 4s ease infinite);
179
180 &:before {
181 position: absolute;
182 top: 0;
183 left: 0;
184 display: block;
185 width: 100%;
186 height: 100%;
187 background: inherit;
188 opacity: 0.9;
189 content: "";
190 transform-origin: 50% 50%;
191 @include transform(rotate(45deg));
192 }
193 }
194 }
195 }
196
197
198 /* ==========================================================================
199 Loading - Luminous Circles
200 ========================================================================== */
201
202 #loftloader-wrapper.pl-circles {
203 #loader {
204 width: 100px;
205 height: 60px;
206
207 span,
208 &:before,
209 &:after {
210 position: absolute;
211 display: block;
212 width: 10px;
213 height: 10px;
214 border-radius: 50%;
215 opacity: 0.2;
216 background: currentColor;
217 }
218
219 span {
220 top: 50%;
221 left: 50%;
222 @include transform(translate(-50%, -50%));
223 @include animation(lightUp 1.5s linear infinite 0.5s);
224 }
225
226 &:before,
227 &:after {
228 content: "";
229 top: 50%;
230 @include transform(translate(0, -50%));
231 }
232
233 &:before {
234 left: 0;
235 @include animation(lightUp 1.5s linear infinite);
236 }
237
238 &:after {
239 right: 0;
240 @include animation(lightUp 1.5s linear infinite 1s);
241 }
242 }
243 }
244
245
246 /* ==========================================================================
247 Loading - Wave
248 ========================================================================== */
249
250 #loftloader-wrapper.pl-wave {
251 #loader {
252 width: 60px;
253 height: 30px;
254
255 span,
256 &:before,
257 &:after {
258 position: relative;
259 display: inline-block;
260 width: 6px;
261 height: 100%;
262 background: currentColor;
263 }
264
265 span {
266 margin: 0 16px;
267 @include animation(wave 0.9s linear infinite 0.3s);
268 }
269
270 &:before,
271 &:after {
272 content: "";
273 }
274
275 &:before {
276 @include animation(wave 0.9s linear infinite);
277 }
278
279 &:after {
280 @include animation(wave 0.9s linear infinite 0.6s);
281 }
282 }
283 }
284
285
286 /* ==========================================================================
287 Loading - Spinning Square
288 ========================================================================== */
289
290 #loftloader-wrapper.pl-square {
291 #loader {
292 width: 50px;
293 height: 50px;
294 transform-origin: 50% 50%;
295 @include animation(spinReturn 4s ease infinite);
296
297 span {
298 position: absolute;
299 top: 0;
300 left: 0;
301 display: block;
302 width: 100%;
303 height: 100%;
304 border: 4px solid currentColor;
305 box-sizing: border-box;
306 transform-origin: 50% 50%;
307 @include transform(rotate(45deg));
308 }
309 }
310 }
311
312
313 /* ==========================================================================
314 Loading - Drawing Frame
315 ========================================================================== */
316
317 #loftloader-wrapper.pl-frame {
318 #loader {
319 width: 80px;
320 height: 80px;
321 max-width: 90vw;
322
323 &:before,
324 &:after {
325 position: absolute;
326 width: 100%;
327 height: 4px;
328 background: currentColor;
329 content: "";
330 }
331
332 &:before {
333 top: 0;
334 right: 0;
335 left: auto;
336 @include animation(drawframeTop 4s linear infinite);
337 }
338
339 &:after {
340 right: auto;
341 bottom: 0;
342 left: 0;
343 @include animation(drawframeBottom 4s linear infinite 1s);
344 }
345
346 span {
347 position: absolute;
348 top: 0;
349 left: 0;
350 display: block;
351 width: 100%;
352 height: 100%;
353
354 &:before,
355 &:after {
356 position: absolute;
357 width: 4px;
358 height: 100%;
359 background: currentColor;
360 content: "";
361 }
362
363 &:before {
364 top: auto;
365 right: 0;
366 bottom: 0;
367 @include animation(drawframeRight 4s linear infinite 0.5s);
368 }
369
370 &:after {
371 top: 0;
372 bottom: auto;
373 left: 0;
374 @include animation(drawframeLeft 4s linear infinite 1.5s);
375 }
376 }
377
378 img {
379 position: absolute;
380 top: 50%;
381 left: 50%;
382 @include transform(translate(-50%, -50%));
383 display: block;
384 max-width: 80%;
385 max-height: 80%;
386 }
387 }
388 }
389
390
391 /* ==========================================================================
392 Loading - Loading Custom Image
393 ========================================================================== */
394
395 #loftloader-wrapper.pl-imgloading {
396 #loader {
397 @include customImg;
398
399 img {
400 opacity: 0.3;
401 }
402
403 .imgloading-container {
404 position: absolute;
405 bottom: 0;
406 left: 0;
407 z-index: 3;
408 display: block;
409 width: 100%;
410 height: 0%;
411 transition: 0s;
412 overflow: hidden;
413 @include animation(imgLoading 6s linear infinite);
414 will-change: height, opacity;
415 transform-origin: 0 100%;
416 }
417
418 span {
419 position: absolute;
420 bottom: 0;
421 left: 0;
422 z-index: 3;
423 display: block;
424 width: 100%;
425 height: 100%;
426 background-repeat: no-repeat;
427 background-size: cover;
428 background-position: center bottom;
429 transition: 0s;
430 }
431 }
432 }
433
434
435 /* ==========================================================================
436 Loading - Beating
437 ========================================================================== */
438
439 #loftloader-wrapper.pl-beating {
440 #loader {
441 width: 60px;
442 height: 60px;
443
444 span,
445 &:before {
446 position: absolute;
447 top: 0;
448 left: 0;
449 display: block;
450 width: 60px;
451 height: 60px;
452 border-radius: 50%;
453 background: currentColor;
454 box-shadow: 0 0 50px;
455 opacity: 0;
456 }
457
458 span {
459 @include animation(beat 1.5s linear infinite);
460 }
461
462 &:before {
463 content: "";
464 @include animation(beat 1.5s linear infinite 1s);
465 }
466 }
467 }
468
469
470 /* ==========================================================================
471 Close Button
472 ========================================================================== */
473
474 .loader-close-button {
475 position: fixed;
476 right: 10px;
477 top: 10px;
478 z-index: 99999;
479 box-sizing: border-box;
480 width: auto;
481 min-width: 35px;
482 height: 35px;
483 padding: 5px 30px 5px 5px;
484 border-radius: 999px;
485 background: rgba(#000, 0.3);
486 color: #FFF;
487 font-size: 12px;
488 line-height: 25px;
489 cursor: pointer;
490
491 &:hover {
492 background: rgba(#000,0.7);
493 }
494
495 &:before,
496 &:after {
497 position: absolute;
498 top: 16px;
499 right: 9px;
500 display: block;
501 width: 18px;
502 height: 2px;
503 transform-origin: 50% 50%;
504 content: "";
505 background: #FFF;
506 }
507
508 &:before {
509 @include transform(rotate(45deg));
510 }
511
512 &:after {
513 @include transform(rotate(135deg));
514 }
515
516 .screen-reader-text {
517 position: absolute !important;
518 width: 1px;
519 height: 1px;
520 padding: 0;
521 margin: -1px;
522 border: 0;
523 clip: rect(1px, 1px, 1px, 1px);
524 clip-path: inset(50%);
525 overflow: hidden;
526 word-wrap: normal !important;
527 }
528
529 .close-des {
530 padding: 0 5px;
531 font-size: 12px;
532 }
533 }
534