unika-components 1.1.32 → 1.1.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,19 +8,13 @@
8
8
  -webkit-overflow-scrolling: touch;
9
9
  overscroll-behavior: contain;
10
10
  touch-action: pan-y;
11
- transform: translate3d(0, 0, 0);
12
- -webkit-transform: translate3d(0, 0, 0);
13
11
  }
14
12
 
15
- /* 页面容器样式调整 */
16
- .scroll-normal {
17
- position: relative;
18
- width: 100%;
19
- min-height: 100%;
20
- overflow: hidden;
21
- overscroll-behavior: contain;
22
- transform: translate3d(0, 0, 0);
23
- -webkit-transform: translate3d(0, 0, 0);
13
+ /* 键盘激活时的特殊处理 */
14
+ #index.keyboard-active {
15
+ height: auto;
16
+ min-height: calc(var(--vh, 1vh) * 100);
17
+ padding-bottom: env(keyboard-inset-height, 0px);
24
18
  }
25
19
 
26
20
  /* 输入框容器特殊处理 */
@@ -28,34 +22,13 @@
28
22
  position: relative;
29
23
  width: 100%;
30
24
  height: 100%;
31
- transform: translate3d(0, 0, 0);
32
- -webkit-transform: translate3d(0, 0, 0);
33
25
  contain: layout;
34
26
  }
35
27
 
36
- /* 移动设备键盘弹出时的特殊处理 */
37
- @media screen and (max-aspect-ratio: 13/9) {
38
- #index.keyboard-active {
39
- height: auto;
40
- min-height: calc(var(--vh, 1vh) * 100);
41
- padding-bottom: env(keyboard-inset-height, 0px);
42
- }
43
- }
44
-
45
- /* 安卓特定修复 */
46
- @supports (-webkit-touch-callout: none) {
47
- .ele-wrap {
48
- position: relative;
49
- z-index: 1;
50
- }
51
- }
52
-
53
28
  /* 确保输入框可见 */
54
29
  :deep(.form-input) {
55
- position: absolute;
30
+ position: relative;
56
31
  z-index: 2;
57
- transform: translate3d(0, 0, 0);
58
- -webkit-transform: translate3d(0, 0, 0);
59
32
  }
60
33
 
61
34
  /* 防止输入框被其他元素覆盖 */
@@ -64,7 +37,7 @@
64
37
  z-index: 3;
65
38
  }
66
39
 
67
- /* 全局样式 */
40
+ /* 全局样式修复 */
68
41
  html {
69
42
  height: 100%;
70
43
  overflow: hidden;
@@ -84,6 +57,33 @@ body {
84
57
  }
85
58
  }
86
59
 
60
+ /* 防止交互时的布局跳动 */
61
+ body.interaction-locked {
62
+ overflow: hidden !important;
63
+ position: relative !important;
64
+ height: 100% !important;
65
+ }
66
+
67
+ /* 表单提交和弹框交互时的稳定性 */
68
+ .form-submitting,
69
+ .modal-active {
70
+ position: relative;
71
+ overflow: hidden;
72
+ }
73
+
74
+ /* 优化移动端触摸行为 */
75
+ * {
76
+ -webkit-tap-highlight-color: transparent;
77
+ -webkit-touch-callout: none;
78
+ -webkit-user-select: none;
79
+ user-select: none;
80
+ }
81
+
82
+ input, textarea {
83
+ -webkit-user-select: text;
84
+ user-select: text;
85
+ }
86
+
87
87
  .scroll-wrap.scroll-long {
88
88
  position: relative;
89
89
  width: 100%;
@@ -105,6 +105,12 @@ body {
105
105
  }
106
106
  }
107
107
 
108
+ .form-container {
109
+ position: relative;
110
+ width: 100%;
111
+ height: 100%;
112
+ }
113
+
108
114
  .form-input {
109
115
  position: absolute;
110
116
  transform: translate3d(0, 0, 0);
@@ -187,319 +193,123 @@ input {
187
193
  width: 100%;
188
194
  }
189
195
 
190
- .form-container {
196
+ .ele-text {
191
197
  position: relative;
192
- width: 100%;
193
- height: 100%;
194
- }
195
- .ele-img {
196
- position: absolute;
197
- overflow: hidden;
198
- }
199
-
200
- .ele-img .ani-wrap {
201
- width: 100%;
202
- height: 100%;
203
- }
204
-
205
- .ele-img .ele-image {
206
- position: relative;
207
- display: block;
208
- }
209
-
210
- .ele-img .rotate-wrap {
211
- position: absolute;
212
- left: 0;
213
- right: 0;
214
- top: 0;
215
- bottom: 0;
216
- }
217
-
218
- .ele-img .ele-img-bg,
219
- .ele-img .rotate-wrap .img-wrap {
220
- width: 100%;
221
- height: 100%;
222
- overflow: hidden;
223
- }
224
-
225
- .ele-img .ele-bg-wrap {
226
- width: 100%;
227
- height: 100%;
228
- background-size: cover;
229
- background-position: 50% 50%;
230
- background-repeat: no-repeat;
231
- background-clip: border-box;
232
- }
233
-
234
- /* 动画关键帧 */
235
- @keyframes zoomIn {
236
- from {
237
- opacity: 0;
238
- transform: scale(0.5);
239
- }
240
- to {
241
- opacity: 1;
242
- transform: scale(1);
243
- }
244
- }.count-down .drag-point {
245
- cursor: default!important
246
198
  }
247
199
 
248
- .count-down .ani-wrap {
200
+ .ele-text .ani-wrap {
249
201
  width: 100%;
250
- height: 100%
251
- }
252
-
253
- .count-down .count-text,.count-down .finish-cont {
254
- display: -webkit-box;
255
- display: -ms-flexbox;
256
- display: flex;
257
202
  height: 100%;
258
- -webkit-box-align: center;
259
- -ms-flex-align: center;
260
- align-items: center;
261
- -webkit-box-pack: center;
262
- -ms-flex-pack: center;
263
- justify-content: center
264
203
  }
265
204
 
266
- .count-down .finish-cont {
267
- width: 100%
205
+ .text-common {
206
+ padding: 5px;
207
+ text-orientation: upright;
208
+ white-space: pre-wrap;
268
209
  }
269
210
 
270
- .count-down .count-flip {
271
- display: -webkit-box;
272
- display: -ms-flexbox;
273
- display: flex;
274
- height: 100%;
275
- -webkit-box-align: center;
276
- -ms-flex-align: center;
277
- align-items: center;
278
- -webkit-box-pack: center;
279
- -ms-flex-pack: center;
280
- justify-content: center
211
+ /* 文本动画类 */
212
+ .text-fadeIn {
213
+ animation: fadeIn 1s ease-in-out;
281
214
  }
282
215
 
283
- .count-down .count-flip .numscroll {
284
- -webkit-animation: numscroll .4s ease-in-out;
285
- animation: numscroll .4s ease-in-out;
286
- -webkit-animation-fill-mode: both;
287
- animation-fill-mode: both
216
+ .text-slideIn {
217
+ animation: slideIn 1s ease-in-out;
288
218
  }
289
219
 
290
- .count-down .count-flip .numscroll .curr-num {
291
- -webkit-transition: all .3s ease-in-out;
292
- transition: all .3s ease-in-out;
293
- opacity: .6;
294
- -webkit-transform: scale(.5)!important;
295
- transform: scale(.5)!important
220
+ .text-bounceIn {
221
+ animation: bounceIn 1s ease-in-out;
296
222
  }
297
223
 
298
- @-webkit-keyframes numscroll {
299
- 0% {
300
- -webkit-transform: translateZ(0);
301
- transform: translateZ(0)
224
+ /* 基础动画关键帧 */
225
+ @keyframes fadeIn {
226
+ from {
227
+ opacity: 0;
302
228
  }
229
+ to {
230
+ opacity: 1;
231
+ }
232
+ }
303
233
 
234
+ @keyframes slideIn {
235
+ from {
236
+ transform: translateY(20px);
237
+ opacity: 0;
238
+ }
304
239
  to {
305
- -webkit-transform: translate3d(0,100%,0);
306
- transform: translate3d(0,100%,0)
240
+ transform: translateY(0);
241
+ opacity: 1;
307
242
  }
308
243
  }
309
244
 
310
- @keyframes numscroll {
245
+ @keyframes bounceIn {
311
246
  0% {
312
- -webkit-transform: translateZ(0);
313
- transform: translateZ(0)
247
+ transform: scale(0.3);
248
+ opacity: 0;
314
249
  }
315
-
250
+ 50% {
251
+ transform: scale(1.05);
252
+ opacity: 0.8;
253
+ }
254
+ 70% {
255
+ transform: scale(0.9);
256
+ opacity: 0.9;
257
+ }
258
+ 100% {
259
+ transform: scale(1);
260
+ opacity: 1;
261
+ }
262
+ }
263
+ @keyframes jumpheart {
316
264
  to {
317
- -webkit-transform: translate3d(0,100%,0);
318
- transform: translate3d(0,100%,0)
265
+ -webkit-transform: scale(1.2);
266
+ transform: scale(1.2)
319
267
  }
320
268
  }
269
+ .ele-calendar {
270
+ position: relative;
271
+ width: 325px !important;
272
+ min-height: 325px !important;
273
+ height: auto !important;
274
+ }
321
275
 
322
- .count-down .count-flip .c-com {
323
- min-width: 50px;
324
- height: auto;
325
- margin: 6px;
326
- padding: 5px 0 6px;
327
- background-color: #111
276
+ .ele-calendar .drag-point {
277
+ cursor: default !important;
328
278
  }
329
279
 
330
- .count-down .count-flip .c-com .flex-wrap {
331
- display: -webkit-box;
332
- display: -ms-flexbox;
333
- display: flex;
280
+ .ele-calendar .ani-wrap {
334
281
  position: relative;
335
282
  width: 100%;
336
- height: 100%;
337
- -webkit-box-align: center;
338
- -ms-flex-align: center;
339
- align-items: center
283
+ min-height: 325px !important;
284
+ height: auto !important;
285
+ padding: 22px 0;
340
286
  }
341
287
 
342
- .count-down .count-flip .c-com .flex-wrap .curr-num,.count-down .count-flip .c-com .flex-wrap .next-num {
343
- line-height: 27px
288
+ .ele-calendar .ani-wrap .can-wrap .can-top {
289
+ display: flex;
290
+ justify-content: space-between;
291
+ align-items: flex-end;
292
+ line-height: 1;
293
+ padding: 0 47px 20px;
344
294
  }
345
295
 
346
- .count-down .count-flip .c-com .flex-wrap .next-num {
347
- position: absolute;
348
- top: -100%
296
+ .ele-calendar .ani-wrap .can-wrap .can-top .can-left {
297
+ font-size: 25px;
298
+ padding-bottom: 4px;
349
299
  }
350
300
 
351
- .count-down .count-flip .c-com .flex-wrap .curr-num {
352
- -webkit-transform: scale(1);
353
- transform: scale(1)
301
+ .ele-calendar .ani-wrap .can-wrap .can-top .can-right {
302
+ font-size: 25px;
354
303
  }
355
304
 
356
- .count-down .bottom-center,.count-down .left-bottom,.count-down .left-center,.count-down .left-top,.count-down .right-bottom,.count-down .right-center,.count-down .right-top,.count-down .top-center {
357
- display: none!important
305
+ .ele-calendar .ani-wrap .can-wrap .can-top .can-right span {
306
+ position: relative;
307
+ top: 2px;
308
+ font-size: 57px;
358
309
  }
359
310
 
360
- .c-wrap {
361
- width: 100%;
362
- height: 100%;
363
- overflow: hidden;
364
- font-size: 0
365
- }
366
-
367
- .c-wrap.c-day-wrap {
368
- text-align: center
369
- }
370
-
371
- .c-wrap.c-day-wrap .c-num {
372
- width: auto
373
- }
374
-
375
- .c-wrap .c-num {
376
- display: inline-block;
377
- width: 50%;
378
- overflow: hidden;
379
- font-size: 20px;
380
- color: #999
381
- }
382
-
383
- .c-wrap .c-left .flex-wrap {
384
- display: -webkit-box;
385
- display: -ms-flexbox;
386
- display: flex;
387
- -webkit-box-pack: end;
388
- -ms-flex-pack: end;
389
- justify-content: flex-end
390
- }
391
-
392
- .c-wrap .c-text {
393
- display: -webkit-box;
394
- display: -ms-flexbox;
395
- display: flex;
396
- width: 100%;
397
- font-size: 12px;
398
- -webkit-box-pack: center;
399
- -ms-flex-pack: center;
400
- justify-content: center;
401
- -webkit-box-align: center;
402
- -ms-flex-align: center;
403
- align-items: center;
404
- white-space: nowrap
405
- }
406
-
407
- .element-video {
408
- position: absolute;
409
- overflow: hidden;
410
- background-color: transparent;
411
- }
412
-
413
- .element-video .ani-wrap, .element-video img {
414
- display: block;
415
- width: 100%;
416
- height: 100%;
417
- }
418
-
419
- .video-container {
420
- width: 100%;
421
- height: 100%;
422
- }
423
-
424
- .video-container iframe {
425
- width: 100%;
426
- height: 100%;
427
- border: none;
428
- }
429
-
430
- .video-cover {
431
- position: relative;
432
- width: 100%;
433
- height: 100%;
434
- background-size: cover;
435
- background-position: center;
436
- cursor: pointer;
437
- }
438
-
439
- .video-cover .play-btn {
440
- position: absolute;
441
- left: 50%;
442
- top: 50%;
443
- transform: translate(-50%, -50%);
444
- width: 50px;
445
- height: 50px;
446
- opacity: 0.8;
447
- transition: opacity 0.2s;
448
- }
449
-
450
- .video-cover:hover .play-btn {
451
- opacity: 1;
452
- }
453
- @keyframes jumpheart {
454
- to {
455
- -webkit-transform: scale(1.2);
456
- transform: scale(1.2)
457
- }
458
- }
459
- .ele-calendar {
460
- position: relative;
461
- width: 325px !important;
462
- min-height: 325px !important;
463
- height: auto !important;
464
- }
465
-
466
- .ele-calendar .drag-point {
467
- cursor: default !important;
468
- }
469
-
470
- .ele-calendar .ani-wrap {
471
- position: relative;
472
- width: 100%;
473
- min-height: 325px !important;
474
- height: auto !important;
475
- padding: 22px 0;
476
- }
477
-
478
- .ele-calendar .ani-wrap .can-wrap .can-top {
479
- display: flex;
480
- justify-content: space-between;
481
- align-items: flex-end;
482
- line-height: 1;
483
- padding: 0 47px 20px;
484
- }
485
-
486
- .ele-calendar .ani-wrap .can-wrap .can-top .can-left {
487
- font-size: 25px;
488
- padding-bottom: 4px;
489
- }
490
-
491
- .ele-calendar .ani-wrap .can-wrap .can-top .can-right {
492
- font-size: 25px;
493
- }
494
-
495
- .ele-calendar .ani-wrap .can-wrap .can-top .can-right span {
496
- position: relative;
497
- top: 2px;
498
- font-size: 57px;
499
- }
500
-
501
- .ele-calendar .ani-wrap .can-wrap .can-main {
502
- padding: 0 23px;
311
+ .ele-calendar .ani-wrap .can-wrap .can-main {
312
+ padding: 0 23px;
503
313
  }
504
314
 
505
315
  .ele-calendar .ani-wrap .can-wrap .can-main .can-week {
@@ -791,122 +601,245 @@ input {
791
601
  }
792
602
  .icon-xingzhuangjiehe:before {
793
603
  content: "\E6A6";
794
- }.ele-shape {
604
+ }
605
+ .element-video {
606
+ position: absolute;
607
+ overflow: hidden;
608
+ background-color: transparent;
609
+ }
610
+
611
+ .element-video .ani-wrap, .element-video img {
612
+ display: block;
613
+ width: 100%;
614
+ height: 100%;
615
+ }
616
+
617
+ .video-container {
618
+ width: 100%;
619
+ height: 100%;
620
+ }
621
+
622
+ .video-container iframe {
623
+ width: 100%;
624
+ height: 100%;
625
+ border: none;
626
+ }
627
+
628
+ .video-cover {
629
+ position: relative;
630
+ width: 100%;
631
+ height: 100%;
632
+ background-size: cover;
633
+ background-position: center;
634
+ cursor: pointer;
635
+ }
636
+
637
+ .video-cover .play-btn {
638
+ position: absolute;
639
+ left: 50%;
640
+ top: 50%;
641
+ transform: translate(-50%, -50%);
642
+ width: 50px;
643
+ height: 50px;
644
+ opacity: 0.8;
645
+ transition: opacity 0.2s;
646
+ }
647
+
648
+ .video-cover:hover .play-btn {
649
+ opacity: 1;
650
+ }#audio {
795
651
  position: absolute;
796
- overflow: hidden;
652
+ right: 10px;
653
+ top: 10px;
654
+ z-index: 103;
655
+ width: 30px;
656
+ height: 30px;
657
+ display: flex;
658
+ align-items: center;
797
659
  }
798
660
 
799
- .ani-wrap {
800
- width: 100%;
801
- height: 100%;
802
- box-sizing: border-box;
661
+ #audio .mrotate {
662
+ animation: mrotate 5s linear infinite;
803
663
  }
804
664
 
805
- .e-shape {
806
- width: 100%;
807
- height: 100%;
665
+ @keyframes mrotate {
666
+ to {
667
+ transform: rotate(1turn);
668
+ }
808
669
  }
809
670
 
810
- .svg-container :deep(svg) {
671
+ #audio .audio {
811
672
  width: 100%;
812
673
  height: 100%;
813
- display: block;
814
- }
815
-
816
- .svg-loading,
817
- .svg-error {
818
674
  display: flex;
819
675
  align-items: center;
820
676
  justify-content: center;
821
- width: 100%;
822
- height: 100%;
823
- background: rgba(0,0,0,0.05);
824
- }.ele-effect {
825
- will-change: transform;
677
+ color: #fff;
678
+ background: #666;
679
+ border-radius: 50%;
680
+ overflow: hidden;
681
+ cursor: pointer;
682
+ transition: all 0.3s ease;
826
683
  }
827
684
 
828
- .ele-effect .effect-wrap {
829
- position: relative;
830
- width: 100%;
831
- height: 100%;
685
+ #audio .audio.a-border {
686
+ border: 1px solid #fff;
832
687
  }
833
688
 
834
- .particle {
835
- position: absolute;
836
- background-repeat: no-repeat;
837
- background-size: contain;
838
- animation-name: falling;
839
- animation-timing-function: linear;
840
- animation-iteration-count: infinite;
841
- will-change: transform;
689
+ #audio .audio .music-icon {
690
+ display: block;
691
+ width: 60%;
692
+ height: 60%;
693
+ object-fit: contain;
842
694
  }
843
695
 
844
- @keyframes falling {
845
- 0% {
846
- transform: translateY(0) rotate(0deg);
847
- opacity: 1;
848
- }
849
- 80% {
850
- opacity: 0.8;
851
- }
852
- 100% {
853
- transform: translateY(100vh) rotate(360deg);
854
- opacity: 0;
855
- }
696
+ #audio .audio .iconfont {
697
+ font-size: 2opx;
698
+ line-height: 1;
856
699
  }
857
- .ele-lottie .ele-lotwrap {
858
- overflow: hidden
859
- }
860
-
861
- .ele-effect .effect-wrap {
862
- position: relative;
700
+ #audio .icon-cancel {
701
+ position: absolute;
702
+ width: 100%;
703
+ height: 100%;
704
+ border-radius: 50%;
863
705
  overflow: hidden;
706
+ padding: 15px 0;
707
+ }
708
+ #audio .icon-cancel .icon-h {
709
+ transform: rotate(45deg);
864
710
  width: 100%;
865
- height: 100%
711
+ height: 2px;
712
+ background: #fff;
713
+ }
714
+ #audio .icon-cancel .icon-h:before, #audio .icon-cancel .icon-h:after {
715
+ content: '';
716
+ position: absolute;
717
+ width: 100%;
718
+ height: 2px;
719
+ background: #fff;
720
+ }.element-ditu .ani-wrap {
721
+ width: 100%;
722
+ height: 100%;
723
+ overflow: hidden
866
724
  }
867
725
 
868
- .ele-effect .e-small {
726
+ .element-ditu .map {
727
+ width: 100%;
728
+ height: 100%
729
+ }
730
+
731
+ .element-ditu .map .el-button {
732
+ width: 100%;
733
+ height: 100%;
734
+ display: -webkit-box;
735
+ display: -ms-flexbox;
736
+ display: flex;
737
+ -webkit-box-align: center;
738
+ -ms-flex-align: center;
739
+ align-items: center;
740
+ padding: 0;
741
+ -webkit-box-pack: center;
742
+ -ms-flex-pack: center;
743
+ justify-content: center;
744
+ background: inherit;
745
+ color: inherit;
746
+ border: none
747
+ }
748
+
749
+ .element-ditu .center-map {
750
+ width: 100%;
751
+ height: 100%;
752
+ background: #fff
753
+ }
754
+
755
+ .element-ditu .mask-map {
756
+ position: absolute;
757
+ width: 100%;
758
+ height: 100%;
759
+ top: 0
760
+ }
761
+ .map-iframe {
762
+ width: 100%;
763
+ height: 100%;
764
+ }.ele-img {
869
765
  position: absolute;
870
- width: 24px;
871
- height: 24px;
872
- background-image: url(https://h5cdn.unika.cc/static/img/uniComponents/snow.png);
766
+ overflow: hidden;
767
+ }
768
+
769
+ .ele-img .ani-wrap {
770
+ width: 100%;
771
+ height: 100%;
772
+ }
773
+
774
+ .ele-img .ele-image {
775
+ position: relative;
776
+ display: block;
777
+ }
778
+
779
+ .ele-img .rotate-wrap {
780
+ position: absolute;
781
+ left: 0;
782
+ right: 0;
783
+ top: 0;
784
+ bottom: 0;
785
+ }
786
+
787
+ .ele-img .ele-img-bg,
788
+ .ele-img .rotate-wrap .img-wrap {
789
+ width: 100%;
790
+ height: 100%;
791
+ overflow: hidden;
792
+ }
793
+
794
+ .ele-img .ele-bg-wrap {
795
+ width: 100%;
796
+ height: 100%;
873
797
  background-size: cover;
798
+ background-position: 50% 50%;
874
799
  background-repeat: no-repeat;
875
- -webkit-transform-origin: center;
876
- transform-origin: center;
877
- -webkit-animation: snow 5s linear infinite;
878
- animation: snow 5s linear infinite
879
- }
880
- .ele-lottie .ele-lotwrap {
881
- overflow: hidden;
882
- }.button {
800
+ background-clip: border-box;
801
+ }
802
+
803
+ /* 动画关键帧 */
804
+ @keyframes zoomIn {
805
+ from {
806
+ opacity: 0;
807
+ transform: scale(0.5);
808
+ }
809
+ to {
810
+ opacity: 1;
811
+ transform: scale(1);
812
+ }
813
+ }.ele-shape {
883
814
  position: absolute;
884
- cursor: pointer;
885
- user-select: none;
815
+ overflow: hidden;
886
816
  }
887
-
888
- .button .ani-wrap {
889
- display: flex;
890
- justify-content: center;
891
- align-items: center;
817
+
818
+ .ani-wrap {
892
819
  width: 100%;
893
820
  height: 100%;
894
- overflow: hidden;
895
- transition: opacity 0.2s;
821
+ box-sizing: border-box;
896
822
  }
897
-
898
- .button .ani-wrap:hover {
899
- opacity: 0.9;
823
+
824
+ .e-shape {
825
+ width: 100%;
826
+ height: 100%;
900
827
  }
901
828
 
902
- .button-content {
829
+ .svg-container :deep(svg) {
830
+ width: 100%;
831
+ height: 100%;
832
+ display: block;
833
+ }
834
+
835
+ .svg-loading,
836
+ .svg-error {
903
837
  display: flex;
904
838
  align-items: center;
905
839
  justify-content: center;
906
- }
907
-
908
- .btn-text {
909
- margin-left: 10px;
840
+ width: 100%;
841
+ height: 100%;
842
+ background: rgba(0,0,0,0.05);
910
843
  }.call {
911
844
  position: absolute;
912
845
  cursor: pointer;
@@ -950,197 +883,473 @@ input {
950
883
 
951
884
  .hb-tel:before {
952
885
  content: "\E642";
953
- }#audio {
954
- position: absolute;
955
- right: 10px;
956
- top: 10px;
957
- z-index: 103;
958
- width: 30px;
959
- height: 30px;
960
- display: flex;
961
- align-items: center;
962
- }
963
-
964
- #audio .mrotate {
965
- animation: mrotate 5s linear infinite;
966
- }
967
-
968
- @keyframes mrotate {
969
- to {
970
- transform: rotate(1turn);
886
+ }.ele-form {
887
+ position: absolute;
888
+ user-select: none;
971
889
  }
972
- }
973
-
974
- #audio .audio {
975
- width: 100%;
976
- height: 100%;
977
- display: flex;
978
- align-items: center;
979
- justify-content: center;
980
- color: #fff;
981
- background: #666;
982
- border-radius: 50%;
983
- overflow: hidden;
984
- cursor: pointer;
985
- transition: all 0.3s ease;
986
- }
987
-
988
- #audio .audio.a-border {
989
- border: 1px solid #fff;
990
- }
991
-
992
- #audio .audio .music-icon {
993
- display: block;
994
- width: 60%;
995
- height: 60%;
996
- object-fit: contain;
997
- }
998
-
999
- #audio .audio .iconfont {
1000
- font-size: 2opx;
1001
- line-height: 1;
1002
- }
1003
- #audio .icon-cancel {
890
+
891
+ .f-select {
892
+ cursor: pointer;
893
+ }
894
+
895
+ .ani-wrap {
896
+ position: relative;
897
+ }
898
+
899
+ .f-select .ani-wrap .fs-tit {
900
+ position: relative;
901
+ display: flex;
902
+ padding: 0 5px;
903
+ height: 35px;
904
+ line-height: 35px;
905
+ align-items: center;
906
+ }
907
+
908
+ .require {
909
+ padding: 0 5px 0 0;
910
+ color: red;
911
+ vertical-align: middle;
912
+ }
913
+
914
+ .fs-cont {
915
+ padding-right: 15px;
916
+ white-space: nowrap;
917
+ overflow: hidden;
918
+ text-overflow: ellipsis;
919
+ flex-grow: 1;
920
+ }
921
+
922
+ .icon-bofang1 {
923
+ font-size: 12px;
924
+ transition: transform 0.2s ease;
925
+ }
926
+
927
+ .rotate-180 {
928
+ transform: rotate(180deg) !important;
929
+ }
930
+
931
+ .f-real {
1004
932
  position: absolute;
933
+ left: 0;
934
+ top: 0;
1005
935
  width: 100%;
1006
936
  height: 100%;
1007
- border-radius: 50%;
1008
- overflow: hidden;
1009
- padding: 15px 0;
1010
- }
1011
- #audio .icon-cancel .icon-h {
1012
- transform: rotate(45deg);
1013
- width: 100%;
1014
- height: 2px;
1015
- background: #fff;
937
+ z-index: 1;
938
+ opacity: 0;
939
+ cursor: pointer;
1016
940
  }
1017
- #audio .icon-cancel .icon-h:before, #audio .icon-cancel .icon-h:after {
1018
- content: '';
1019
- position: absolute;
1020
- width: 100%;
1021
- height: 2px;
1022
- background: #fff;
1023
- }body, html {
941
+
942
+ .dropdown-menu {
943
+ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
944
+ }
945
+
946
+ .dropdown-item {
947
+ padding: 8px 10px;
948
+ cursor: pointer;
949
+ transition: background-color 0.2s;
950
+ }
951
+
952
+ .dropdown-item:hover {
953
+ background-color: #f5f5f5;
954
+ }
955
+
956
+ .dropdown-item.selected {
957
+ background-color: #e6f7ff;
958
+ color: #1890ff;
959
+ }
960
+
961
+ .f-select .fs-tit .icon-bofang1 {
962
+ position: absolute;
963
+ right: 10px;
964
+ font-size: 12px;
965
+ display: inline-block;
966
+ transform: rotate(90deg);
967
+ }
968
+
969
+ .icon-bofang1:before {
970
+ content: "\E6CF";
971
+ }
972
+
973
+ .has-error {
974
+ border-color: #ff4d4f !important;
975
+ }
976
+
977
+ .error-tip {
978
+ position: fixed;
979
+ left: 0;
980
+ top: 0;
1024
981
  width: 100%;
1025
982
  height: 100%;
1026
- }
1027
- * {
1028
- padding: 0;
1029
- margin: 0;
1030
- box-sizing: border-box;
1031
- white-space: normal;
1032
- word-break: break-all;
1033
- -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
983
+ z-index: 1000;
984
+ }.ele-effect {
985
+ will-change: transform;
1034
986
  }
1035
987
 
1036
- @font-face {
1037
- font-family: iconfont;
1038
- src: url(https://h5cdn.unika.cc/static/font/iconfont/iconfont.f1262e4.woff2) format("woff2"),
1039
- url(https://h5cdn.unika.cc/static/font/iconfont/iconfont.788d827.woff) format("woff"),
1040
- url(https://h5cdn.unika.cc/static/font/iconfont/iconfont.9541e59.ttf) format("truetype")
988
+ .ele-effect .effect-wrap {
989
+ position: relative;
990
+ width: 100%;
991
+ height: 100%;
1041
992
  }
1042
993
 
1043
- .iconfont {
1044
- font-family: "iconfont" !important;
1045
- font-size: 16px;
1046
- font-style: normal;
1047
- -webkit-font-smoothing: antialiased;
1048
- -moz-osx-font-smoothing: grayscale;
994
+ .particle {
995
+ position: absolute;
996
+ background-repeat: no-repeat;
997
+ background-size: contain;
998
+ animation-name: falling;
999
+ animation-timing-function: linear;
1000
+ animation-iteration-count: infinite;
1001
+ will-change: transform;
1049
1002
  }
1050
1003
 
1051
- #index {
1052
- position: relative;
1053
- width: 100%;
1054
- height: 100%;
1055
- overflow: hidden;
1004
+ @keyframes falling {
1005
+ 0% {
1006
+ transform: translateY(0) rotate(0deg);
1007
+ opacity: 1;
1008
+ }
1009
+ 80% {
1010
+ opacity: 0.8;
1011
+ }
1012
+ 100% {
1013
+ transform: translateY(100vh) rotate(360deg);
1014
+ opacity: 0;
1015
+ }
1016
+ }
1017
+ .ele-lottie .ele-lotwrap {
1018
+ overflow: hidden
1056
1019
  }
1057
1020
 
1058
- #page-list {
1021
+ .ele-effect .effect-wrap {
1059
1022
  position: relative;
1023
+ overflow: hidden;
1060
1024
  width: 100%;
1061
- height: 100%;
1062
- max-width: 800px;
1063
- margin: 0 auto;
1064
- z-index: 1
1065
- }
1066
-
1067
- #page-list.hardware .eles {
1068
- will-change: transform
1025
+ height: 100%
1069
1026
  }
1070
1027
 
1071
- #page-list .bg-wrap {
1028
+ .ele-effect .e-small {
1072
1029
  position: absolute;
1073
- left: 0;
1074
- top: 0;
1075
- right: 0;
1076
- bottom: 0;
1077
- z-index: -1
1030
+ width: 24px;
1031
+ height: 24px;
1032
+ background-image: url(https://h5cdn.unika.cc/static/img/uniComponents/snow.png);
1033
+ background-size: cover;
1034
+ background-repeat: no-repeat;
1035
+ -webkit-transform-origin: center;
1036
+ transform-origin: center;
1037
+ -webkit-animation: snow 5s linear infinite;
1038
+ animation: snow 5s linear infinite
1039
+ }.count-down .drag-point {
1040
+ cursor: default!important
1078
1041
  }
1079
1042
 
1080
- #page-list .ani-pause .ani-wrap {
1081
- animation-play-state: paused!important;
1082
- -webkit-animation-play-state: paused!important
1043
+ .count-down .ani-wrap {
1044
+ width: 100%;
1045
+ height: 100%
1083
1046
  }
1084
1047
 
1085
- #page-list .audio-wrap {
1086
- z-index: 10
1048
+ .count-down .count-text,.count-down .finish-cont {
1049
+ display: -webkit-box;
1050
+ display: -ms-flexbox;
1051
+ display: flex;
1052
+ height: 100%;
1053
+ -webkit-box-align: center;
1054
+ -ms-flex-align: center;
1055
+ align-items: center;
1056
+ -webkit-box-pack: center;
1057
+ -ms-flex-pack: center;
1058
+ justify-content: center
1087
1059
  }
1088
1060
 
1089
- #page-list .audio-wrap,#page-list .page-item {
1090
- position: absolute;
1091
- left: 0;
1092
- top: 0;
1093
- right: 0;
1094
- bottom: 0
1061
+ .count-down .finish-cont {
1062
+ width: 100%
1095
1063
  }
1096
1064
 
1097
- #page-list .page-item {
1098
- z-index: 0;
1099
- overflow: hidden;
1100
- display: none;
1101
- visibility: hidden;
1102
- transform-style: preserve-3d;
1103
- -webkit-backface-visibility: hidden;
1104
- backface-visibility: hidden;
1105
- transition-timing-function: cubic-bezier(.1,.57,.1,1)
1065
+ .count-down .count-flip {
1066
+ display: -webkit-box;
1067
+ display: -ms-flexbox;
1068
+ display: flex;
1069
+ height: 100%;
1070
+ -webkit-box-align: center;
1071
+ -ms-flex-align: center;
1072
+ align-items: center;
1073
+ -webkit-box-pack: center;
1074
+ -ms-flex-pack: center;
1075
+ justify-content: center
1106
1076
  }
1107
1077
 
1108
- #page-list .page-item .count-down {
1109
- display: none
1078
+ .count-down .count-flip .numscroll {
1079
+ -webkit-animation: numscroll .4s ease-in-out;
1080
+ animation: numscroll .4s ease-in-out;
1081
+ -webkit-animation-fill-mode: both;
1082
+ animation-fill-mode: both
1110
1083
  }
1111
1084
 
1112
- #page-list .page-item .has-ani {
1113
- display: none!important
1085
+ .count-down .count-flip .numscroll .curr-num {
1086
+ -webkit-transition: all .3s ease-in-out;
1087
+ transition: all .3s ease-in-out;
1088
+ opacity: .6;
1089
+ -webkit-transform: scale(.5)!important;
1090
+ transform: scale(.5)!important
1114
1091
  }
1115
1092
 
1116
- #page-list .page-item .ele-effect,#page-list .page-item .page-bg {
1117
- display: none
1118
- }
1093
+ @-webkit-keyframes numscroll {
1094
+ 0% {
1095
+ -webkit-transform: translateZ(0);
1096
+ transform: translateZ(0)
1097
+ }
1119
1098
 
1120
- #page-list .page-item .limit-ani .ani-wrap {
1121
- animation: none!important
1099
+ to {
1100
+ -webkit-transform: translate3d(0,100%,0);
1101
+ transform: translate3d(0,100%,0)
1102
+ }
1122
1103
  }
1123
1104
 
1124
- #page-list .page-item .ani-pause .ani-wrap {
1125
- animation-play-state: paused!important;
1126
- -webkit-animation-play-state: paused!important
1105
+ @keyframes numscroll {
1106
+ 0% {
1107
+ -webkit-transform: translateZ(0);
1108
+ transform: translateZ(0)
1109
+ }
1110
+
1111
+ to {
1112
+ -webkit-transform: translate3d(0,100%,0);
1113
+ transform: translate3d(0,100%,0)
1114
+ }
1127
1115
  }
1128
1116
 
1129
- #page-list .page-item .showAniEle .has-ani {
1130
- display: block!important
1117
+ .count-down .count-flip .c-com {
1118
+ min-width: 50px;
1119
+ height: auto;
1120
+ margin: 6px;
1121
+ padding: 5px 0 6px;
1122
+ background-color: #111
1131
1123
  }
1132
1124
 
1133
- #page-list .page-item .showAniEle .page-bg {
1134
- display: block
1125
+ .count-down .count-flip .c-com .flex-wrap {
1126
+ display: -webkit-box;
1127
+ display: -ms-flexbox;
1128
+ display: flex;
1129
+ position: relative;
1130
+ width: 100%;
1131
+ height: 100%;
1132
+ -webkit-box-align: center;
1133
+ -ms-flex-align: center;
1134
+ align-items: center
1135
1135
  }
1136
1136
 
1137
- #page-list .page-item .scroll-wrap {
1138
- position: relative;
1139
- width: 100%;
1140
- overflow: hidden;
1137
+ .count-down .count-flip .c-com .flex-wrap .curr-num,.count-down .count-flip .c-com .flex-wrap .next-num {
1138
+ line-height: 27px
1141
1139
  }
1142
1140
 
1143
- #page-list .page-item .scroll-wrap.scroll-long {
1141
+ .count-down .count-flip .c-com .flex-wrap .next-num {
1142
+ position: absolute;
1143
+ top: -100%
1144
+ }
1145
+
1146
+ .count-down .count-flip .c-com .flex-wrap .curr-num {
1147
+ -webkit-transform: scale(1);
1148
+ transform: scale(1)
1149
+ }
1150
+
1151
+ .count-down .bottom-center,.count-down .left-bottom,.count-down .left-center,.count-down .left-top,.count-down .right-bottom,.count-down .right-center,.count-down .right-top,.count-down .top-center {
1152
+ display: none!important
1153
+ }
1154
+
1155
+ .c-wrap {
1156
+ width: 100%;
1157
+ height: 100%;
1158
+ overflow: hidden;
1159
+ font-size: 0
1160
+ }
1161
+
1162
+ .c-wrap.c-day-wrap {
1163
+ text-align: center
1164
+ }
1165
+
1166
+ .c-wrap.c-day-wrap .c-num {
1167
+ width: auto
1168
+ }
1169
+
1170
+ .c-wrap .c-num {
1171
+ display: inline-block;
1172
+ width: 50%;
1173
+ overflow: hidden;
1174
+ font-size: 20px;
1175
+ color: #999
1176
+ }
1177
+
1178
+ .c-wrap .c-left .flex-wrap {
1179
+ display: -webkit-box;
1180
+ display: -ms-flexbox;
1181
+ display: flex;
1182
+ -webkit-box-pack: end;
1183
+ -ms-flex-pack: end;
1184
+ justify-content: flex-end
1185
+ }
1186
+
1187
+ .c-wrap .c-text {
1188
+ display: -webkit-box;
1189
+ display: -ms-flexbox;
1190
+ display: flex;
1191
+ width: 100%;
1192
+ font-size: 12px;
1193
+ -webkit-box-pack: center;
1194
+ -ms-flex-pack: center;
1195
+ justify-content: center;
1196
+ -webkit-box-align: center;
1197
+ -ms-flex-align: center;
1198
+ align-items: center;
1199
+ white-space: nowrap
1200
+ }
1201
+ .button {
1202
+ position: absolute;
1203
+ cursor: pointer;
1204
+ user-select: none;
1205
+ }
1206
+
1207
+ .button .ani-wrap {
1208
+ display: flex;
1209
+ justify-content: center;
1210
+ align-items: center;
1211
+ width: 100%;
1212
+ height: 100%;
1213
+ overflow: hidden;
1214
+ transition: opacity 0.2s;
1215
+ }
1216
+
1217
+ .button .ani-wrap:hover {
1218
+ opacity: 0.9;
1219
+ }
1220
+
1221
+ .button-content {
1222
+ display: flex;
1223
+ align-items: center;
1224
+ justify-content: center;
1225
+ }
1226
+
1227
+ .btn-text {
1228
+ margin-left: 10px;
1229
+ }
1230
+ .ele-lottie .ele-lotwrap {
1231
+ overflow: hidden;
1232
+ }body, html {
1233
+ width: 100%;
1234
+ height: 100%;
1235
+ }
1236
+ * {
1237
+ padding: 0;
1238
+ margin: 0;
1239
+ box-sizing: border-box;
1240
+ white-space: normal;
1241
+ word-break: break-all;
1242
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
1243
+ }
1244
+
1245
+ @font-face {
1246
+ font-family: iconfont;
1247
+ src: url(https://h5cdn.unika.cc/static/font/iconfont/iconfont.f1262e4.woff2) format("woff2"),
1248
+ url(https://h5cdn.unika.cc/static/font/iconfont/iconfont.788d827.woff) format("woff"),
1249
+ url(https://h5cdn.unika.cc/static/font/iconfont/iconfont.9541e59.ttf) format("truetype")
1250
+ }
1251
+
1252
+ .iconfont {
1253
+ font-family: "iconfont" !important;
1254
+ font-size: 16px;
1255
+ font-style: normal;
1256
+ -webkit-font-smoothing: antialiased;
1257
+ -moz-osx-font-smoothing: grayscale;
1258
+ }
1259
+
1260
+ #index {
1261
+ position: relative;
1262
+ width: 100%;
1263
+ height: 100%;
1264
+ overflow: hidden;
1265
+ }
1266
+
1267
+ #page-list {
1268
+ position: relative;
1269
+ width: 100%;
1270
+ height: 100%;
1271
+ max-width: 800px;
1272
+ margin: 0 auto;
1273
+ z-index: 1
1274
+ }
1275
+
1276
+ #page-list.hardware .eles {
1277
+ will-change: transform
1278
+ }
1279
+
1280
+ #page-list .bg-wrap {
1281
+ position: absolute;
1282
+ left: 0;
1283
+ top: 0;
1284
+ right: 0;
1285
+ bottom: 0;
1286
+ z-index: -1
1287
+ }
1288
+
1289
+ #page-list .ani-pause .ani-wrap {
1290
+ animation-play-state: paused!important;
1291
+ -webkit-animation-play-state: paused!important
1292
+ }
1293
+
1294
+ #page-list .audio-wrap {
1295
+ z-index: 10
1296
+ }
1297
+
1298
+ #page-list .audio-wrap,#page-list .page-item {
1299
+ position: absolute;
1300
+ left: 0;
1301
+ top: 0;
1302
+ right: 0;
1303
+ bottom: 0
1304
+ }
1305
+
1306
+ #page-list .page-item {
1307
+ z-index: 0;
1308
+ overflow: hidden;
1309
+ display: none;
1310
+ visibility: hidden;
1311
+ transform-style: preserve-3d;
1312
+ -webkit-backface-visibility: hidden;
1313
+ backface-visibility: hidden;
1314
+ transition-timing-function: cubic-bezier(.1,.57,.1,1)
1315
+ }
1316
+
1317
+ #page-list .page-item .count-down {
1318
+ display: none
1319
+ }
1320
+
1321
+ #page-list .page-item .has-ani {
1322
+ display: none!important
1323
+ }
1324
+
1325
+ #page-list .page-item .ele-effect,#page-list .page-item .page-bg {
1326
+ display: none
1327
+ }
1328
+
1329
+ #page-list .page-item .limit-ani .ani-wrap {
1330
+ animation: none!important
1331
+ }
1332
+
1333
+ #page-list .page-item .ani-pause .ani-wrap {
1334
+ animation-play-state: paused!important;
1335
+ -webkit-animation-play-state: paused!important
1336
+ }
1337
+
1338
+ #page-list .page-item .showAniEle .has-ani {
1339
+ display: block!important
1340
+ }
1341
+
1342
+ #page-list .page-item .showAniEle .page-bg {
1343
+ display: block
1344
+ }
1345
+
1346
+ #page-list .page-item .scroll-wrap {
1347
+ position: relative;
1348
+ width: 100%;
1349
+ overflow: hidden;
1350
+ }
1351
+
1352
+ #page-list .page-item .scroll-wrap.scroll-long {
1144
1353
  position: relative;
1145
1354
  width: 100%;
1146
1355
  /* height: 100vh; */
@@ -3353,564 +3562,275 @@ html, body {
3353
3562
  position: relative;
3354
3563
  }
3355
3564
 
3356
- .mess-success-popup .gift-popup .icon-cuowu2 {
3357
- position: absolute;
3358
- top: 10px;
3359
- right: 10px;
3360
- cursor: pointer;
3361
- }
3362
-
3363
- .mess-success-popup .gift-popup .toast {
3364
- display: flex;
3365
- align-items: center;
3366
- justify-content: center;
3367
- margin: 10px 0;
3368
- }
3369
-
3370
- .mess-success-popup .gift-popup .toast img {
3371
- width: 20px;
3372
- height: 15px;
3373
- margin: 0 5px;
3374
- }
3375
-
3376
- .mess-success-popup .gift-popup .title {
3377
- margin: 15px 0;
3378
- font-size: 16px;
3379
- color: #333;
3380
- }
3381
-
3382
- .mess-success-popup .gift-popup .btn {
3383
- background: linear-gradient(270deg, #ff4874, #ff9061);
3384
- color: white;
3385
- border: none;
3386
- padding: 10px 20px;
3387
- border-radius: 20px;
3388
- margin-top: 15px;
3389
- cursor: pointer;
3390
- }
3391
-
3392
- /* 新增图片加载动画样式 */
3393
- .gift-image-container {
3394
- position: relative;
3395
- width: 300px;
3396
- height: 300px;
3397
- margin: 20px 0;
3398
- overflow: hidden;
3399
- }
3400
-
3401
- .gift-image-container img {
3402
- width: 100%;
3403
- height: 100%;
3404
- object-fit: contain;
3405
- opacity: 0;
3406
- transition: opacity 0.5s ease-in-out;
3407
- }
3408
-
3409
- .gift-image-container img.loaded {
3410
- opacity: 1;
3411
- }
3412
-
3413
- .image-loading {
3414
- position: absolute;
3415
- top: 0;
3416
- left: 0;
3417
- width: 100%;
3418
- height: 100%;
3419
- display: flex;
3420
- justify-content: center;
3421
- align-items: center;
3422
- background: rgba(255, 255, 255, 0.8);
3423
- }
3424
-
3425
- .loading-spinner {
3426
- width: 40px;
3427
- height: 40px;
3428
- border: 4px solid #f3f3f3;
3429
- border-top: 4px solid #ed5566;
3430
- border-radius: 50%;
3431
- animation: spin 1s linear infinite;
3432
- }
3433
-
3434
- @keyframes spin {
3435
- 0% { transform: rotate(0deg); }
3436
- 100% { transform: rotate(360deg); }
3437
- }
3438
-
3439
-
3440
- .ele-text {
3441
- position: relative;
3442
- }
3443
-
3444
- .ele-text .ani-wrap {
3445
- width: 100%;
3446
- height: 100%;
3447
- }
3448
-
3449
- .text-common {
3450
- padding: 5px;
3451
- text-orientation: upright;
3452
- white-space: pre-wrap;
3453
- }
3454
-
3455
- /* 文本动画类 */
3456
- .text-fadeIn {
3457
- animation: fadeIn 1s ease-in-out;
3458
- }
3459
-
3460
- .text-slideIn {
3461
- animation: slideIn 1s ease-in-out;
3462
- }
3463
-
3464
- .text-bounceIn {
3465
- animation: bounceIn 1s ease-in-out;
3466
- }
3467
-
3468
- /* 基础动画关键帧 */
3469
- @keyframes fadeIn {
3470
- from {
3471
- opacity: 0;
3472
- }
3473
- to {
3474
- opacity: 1;
3475
- }
3476
- }
3477
-
3478
- @keyframes slideIn {
3479
- from {
3480
- transform: translateY(20px);
3481
- opacity: 0;
3482
- }
3483
- to {
3484
- transform: translateY(0);
3485
- opacity: 1;
3486
- }
3487
- }
3488
-
3489
- @keyframes bounceIn {
3490
- 0% {
3491
- transform: scale(0.3);
3492
- opacity: 0;
3493
- }
3494
- 50% {
3495
- transform: scale(1.05);
3496
- opacity: 0.8;
3497
- }
3498
- 70% {
3499
- transform: scale(0.9);
3500
- opacity: 0.9;
3501
- }
3502
- 100% {
3503
- transform: scale(1);
3504
- opacity: 1;
3505
- }
3506
- }.form-input {
3507
- position: absolute;
3508
- }
3509
-
3510
- .input-wrapper {
3511
- display: flex;
3512
- align-items: center;
3513
- width: 100%;
3514
- height: 100%;
3515
- padding: 0 10px;
3516
- box-sizing: border-box;
3517
- position: relative;
3518
- transition: border-color 0.3s;
3519
- }
3520
-
3521
- .required-marker {
3522
- font-size: 12px;
3523
- padding: 0 5px 0 0;
3524
- color: red;
3525
- vertical-align: middle;
3526
- }
3527
-
3528
- input {
3529
- flex: 1;
3530
- border: none;
3531
- outline: none;
3532
- background: transparent;
3533
- height: 100%;
3534
- padding: 0;
3535
- margin: 0;
3536
- }
3537
- /*
3538
- input::placeholder {
3539
- color: #ccc;
3540
- opacity: 1;
3541
- } */
3542
-
3543
- .form-input {
3544
- position: absolute;
3545
- transform: translate3d(0, 0, 0);
3546
- -webkit-transform: translate3d(0, 0, 0);
3547
- backface-visibility: hidden;
3548
- -webkit-backface-visibility: hidden;
3549
- will-change: transform;
3550
- z-index: 1;
3551
- }
3552
-
3553
- .input-wrapper {
3554
- display: flex;
3555
- align-items: center;
3556
- width: 100%;
3557
- height: 100%;
3558
- padding: 0 10px;
3559
- box-sizing: border-box;
3560
- position: relative;
3561
- transition: border-color 0.3s;
3562
- transform: translate3d(0, 0, 0);
3563
- -webkit-transform: translate3d(0, 0, 0);
3564
- contain: layout;
3565
- }
3566
-
3567
- .required-marker {
3568
- font-size: 12px;
3569
- padding: 0 5px 0 0;
3570
- color: red;
3571
- vertical-align: middle;
3572
- }
3573
-
3574
- input {
3575
- flex: 1;
3576
- border: none;
3577
- outline: none;
3578
- background: transparent;
3579
- height: 100%;
3580
- padding: 0;
3581
- margin: 0;
3582
- }
3583
-
3584
- .dynamic-placeholder-input::placeholder {
3585
- color: var(--placeholder-color, #999);
3586
- opacity: 1;
3587
- }
3588
- .dynamic-placeholder-input::-webkit-input-placeholder {
3589
- color: var(--placeholder-color, #999);
3590
- }
3591
- .dynamic-placeholder-input::-moz-placeholder {
3592
- color: var(--placeholder-color, #999);
3593
- opacity: 1;
3594
- }
3595
- .dynamic-placeholder-input:-ms-input-placeholder {
3596
- color: var(--placeholder-color, #999);
3597
- }
3598
-
3599
- /* 安卓特定样式 */
3600
- @supports (-webkit-touch-callout: none) {
3601
- .input-wrapper {
3602
- position: relative;
3603
- z-index: 1;
3604
- }
3605
- }
3606
-
3607
- /* 移动设备键盘弹出时的调整 */
3608
- @media screen and (max-aspect-ratio: 13/9) {
3609
- .form-input {
3610
- position: relative;
3611
- margin-bottom: env(keyboard-inset-height, 0px);
3612
- }
3613
- }
3614
- .form-submit {
3615
- cursor: pointer;
3616
- transition: all 0.2s;
3617
- outline: none;
3618
- border: none;
3619
- }
3620
-
3621
- .form-submit:hover {
3622
- opacity: 0.9;
3623
- transform: translateY(-1px);
3624
- }
3625
-
3626
- .form-submit:active {
3627
- opacity: 0.8;
3628
- transform: translateY(0);
3629
- }
3630
-
3631
- .form-submit:disabled {
3632
- opacity: 0.6;
3633
- cursor: not-allowed;
3634
- transform: none !important;
3565
+ .mess-success-popup .gift-popup .icon-cuowu2 {
3566
+ position: absolute;
3567
+ top: 10px;
3568
+ right: 10px;
3569
+ cursor: pointer;
3635
3570
  }
3636
3571
 
3637
- /* 统一错误提示样式 */
3638
- .tip-cover {
3639
- position: fixed;
3640
- left: 0;
3641
- top: 0;
3642
- width: 100%;
3643
- height: 100%;
3572
+ .mess-success-popup .gift-popup .toast {
3644
3573
  display: flex;
3645
3574
  align-items: center;
3646
3575
  justify-content: center;
3647
- z-index: 999;
3648
- background-color: rgba(0,0,0,.7);
3649
- }
3650
-
3651
- .tip {
3652
- width: 80%;
3653
- max-width: 250px;
3654
- padding: 10px;
3655
- border-radius: 5px;
3656
- background-color: #fff;
3576
+ margin: 10px 0;
3657
3577
  }
3658
3578
 
3659
- .tip-btn {
3660
- display: block;
3661
- margin: 25px auto;
3662
- width: 120px;
3663
- height: 30px;
3664
- color: #fff;
3665
- border-radius: 4px;
3666
- text-align: center;
3667
- font-size: 14px;
3668
- line-height: 30px;
3669
- background: #ed5566;
3670
- cursor: pointer;
3579
+ .mess-success-popup .gift-popup .toast img {
3580
+ width: 20px;
3581
+ height: 15px;
3582
+ margin: 0 5px;
3671
3583
  }
3672
3584
 
3673
- .tip-content {
3674
- font-size: 14px;
3675
- padding-top: 30px;
3676
- text-align: center;
3677
- }.element-ditu .ani-wrap {
3678
- width: 100%;
3679
- height: 100%;
3680
- overflow: hidden
3681
- }
3682
-
3683
- .element-ditu .map {
3684
- width: 100%;
3685
- height: 100%
3686
- }
3687
-
3688
- .element-ditu .map .el-button {
3689
- width: 100%;
3690
- height: 100%;
3691
- display: -webkit-box;
3692
- display: -ms-flexbox;
3693
- display: flex;
3694
- -webkit-box-align: center;
3695
- -ms-flex-align: center;
3696
- align-items: center;
3697
- padding: 0;
3698
- -webkit-box-pack: center;
3699
- -ms-flex-pack: center;
3700
- justify-content: center;
3701
- background: inherit;
3702
- color: inherit;
3703
- border: none
3704
- }
3705
-
3706
- .element-ditu .center-map {
3707
- width: 100%;
3708
- height: 100%;
3709
- background: #fff
3710
- }
3711
-
3712
- .element-ditu .mask-map {
3713
- position: absolute;
3714
- width: 100%;
3715
- height: 100%;
3716
- top: 0
3717
- }
3718
- .map-iframe {
3719
- width: 100%;
3720
- height: 100%;
3721
- }.ele-form {
3722
- position: absolute;
3723
- user-select: none;
3585
+ .mess-success-popup .gift-popup .title {
3586
+ margin: 15px 0;
3587
+ font-size: 16px;
3588
+ color: #333;
3724
3589
  }
3725
3590
 
3726
- .f-single {
3591
+ .mess-success-popup .gift-popup .btn {
3592
+ background: linear-gradient(270deg, #ff4874, #ff9061);
3593
+ color: white;
3594
+ border: none;
3595
+ padding: 10px 20px;
3596
+ border-radius: 20px;
3597
+ margin-top: 15px;
3727
3598
  cursor: pointer;
3728
3599
  }
3729
3600
 
3730
- .ani-wrap {
3601
+ /* 新增图片加载动画样式 */
3602
+ .gift-image-container {
3731
3603
  position: relative;
3732
- }
3733
-
3734
- .f-single .ani-wrap .fs-tit {
3735
- display: flex;
3736
- padding: 0 5px;
3737
- height: 40px;
3738
- align-items: center;
3739
- white-space: nowrap;
3604
+ width: 300px;
3605
+ height: 300px;
3606
+ margin: 20px 0;
3740
3607
  overflow: hidden;
3741
- text-overflow: ellipsis;
3742
- border-bottom: 1px solid rgba(153, 153, 153, 1);
3743
3608
  }
3744
3609
 
3745
- .require {
3746
- padding: 0 5px 0 0;
3747
- color: red;
3748
- vertical-align: middle;
3610
+ .gift-image-container img {
3611
+ width: 100%;
3612
+ height: 100%;
3613
+ object-fit: contain;
3614
+ opacity: 0;
3615
+ transition: opacity 0.5s ease-in-out;
3749
3616
  }
3750
3617
 
3751
- .f-single ul {
3752
- padding: 15px;
3753
- margin: 0;
3754
- list-style: none;
3618
+ .gift-image-container img.loaded {
3619
+ opacity: 1;
3755
3620
  }
3756
3621
 
3757
- .f-single ul li {
3622
+ .image-loading {
3623
+ position: absolute;
3624
+ top: 0;
3625
+ left: 0;
3626
+ width: 100%;
3627
+ height: 100%;
3758
3628
  display: flex;
3629
+ justify-content: center;
3759
3630
  align-items: center;
3760
- margin-top: 12px;
3761
- font-size: 0;
3762
- }
3763
-
3764
- .f-single ul li:first-child {
3765
- margin-top: 0;
3631
+ background: rgba(255, 255, 255, 0.8);
3766
3632
  }
3767
3633
 
3768
- .fs-circle {
3769
- display: inline-block;
3770
- width: 16px;
3771
- height: 16px;
3634
+ .loading-spinner {
3635
+ width: 40px;
3636
+ height: 40px;
3637
+ border: 4px solid #f3f3f3;
3638
+ border-top: 4px solid #ed5566;
3772
3639
  border-radius: 50%;
3773
- position: relative;
3774
- transition: all 0.2s;
3640
+ animation: spin 1s linear infinite;
3775
3641
  }
3776
3642
 
3777
- .fs-circle.selected {
3778
- background-color: #2687f1;
3779
- border-color: #2687f1 !important;
3643
+ @keyframes spin {
3644
+ 0% { transform: rotate(0deg); }
3645
+ 100% { transform: rotate(360deg); }
3780
3646
  }
3781
3647
 
3782
- .fs-circle.selected::after {
3783
- content: "";
3648
+ .form-input {
3784
3649
  position: absolute;
3785
- top: 3px;
3786
- left: 3px;
3787
- width: 8px;
3788
- height: 8px;
3789
- border-radius: 50%;
3790
- background-color: white;
3791
3650
  }
3792
3651
 
3793
- .fs-txt {
3794
- display: inline-block;
3795
- width: calc(100% - 16px);
3796
- padding-left: 8px;
3797
- vertical-align: top;
3798
- word-break: break-all;
3799
- font-size: 14px;
3800
- line-height: 1.2;
3652
+ .input-wrapper {
3653
+ display: flex;
3654
+ align-items: center;
3655
+ width: 100%;
3656
+ height: 100%;
3657
+ padding: 0 10px;
3658
+ box-sizing: border-box;
3659
+ position: relative;
3660
+ transition: border-color 0.3s;
3801
3661
  }
3802
3662
 
3803
- .has-error .fs-tit {
3804
- border-bottom-color: #ff4d4f;
3663
+ .required-marker {
3664
+ font-size: 12px;
3665
+ padding: 0 5px 0 0;
3666
+ color: red;
3667
+ vertical-align: middle;
3805
3668
  }
3806
3669
 
3807
- /* 错误提示样式 */
3808
- .error-tip {
3809
- position: fixed;
3810
- left: 0;
3811
- top: 0;
3812
- width: 100%;
3670
+ input {
3671
+ flex: 1;
3672
+ border: none;
3673
+ outline: none;
3674
+ background: transparent;
3813
3675
  height: 100%;
3814
- z-index: 1000;
3815
- }.ele-form {
3816
- position: absolute;
3817
- user-select: none;
3818
- }
3819
-
3820
- .f-select {
3821
- cursor: pointer;
3676
+ padding: 0;
3677
+ margin: 0;
3822
3678
  }
3679
+ /*
3680
+ input::placeholder {
3681
+ color: #ccc;
3682
+ opacity: 1;
3683
+ } */
3823
3684
 
3824
- .ani-wrap {
3825
- position: relative;
3685
+ .form-input {
3686
+ position: absolute;
3687
+ transform: translate3d(0, 0, 0);
3688
+ -webkit-transform: translate3d(0, 0, 0);
3689
+ backface-visibility: hidden;
3690
+ -webkit-backface-visibility: hidden;
3691
+ will-change: transform;
3692
+ z-index: 1;
3826
3693
  }
3827
3694
 
3828
- .f-select .ani-wrap .fs-tit {
3829
- position: relative;
3695
+ .input-wrapper {
3830
3696
  display: flex;
3831
- padding: 0 5px;
3832
- height: 35px;
3833
- line-height: 35px;
3834
3697
  align-items: center;
3698
+ width: 100%;
3699
+ height: 100%;
3700
+ padding: 0 10px;
3701
+ box-sizing: border-box;
3702
+ position: relative;
3703
+ transition: border-color 0.3s;
3704
+ transform: translate3d(0, 0, 0);
3705
+ -webkit-transform: translate3d(0, 0, 0);
3706
+ contain: layout;
3835
3707
  }
3836
3708
 
3837
- .require {
3709
+ .required-marker {
3710
+ font-size: 12px;
3838
3711
  padding: 0 5px 0 0;
3839
3712
  color: red;
3840
3713
  vertical-align: middle;
3841
3714
  }
3842
3715
 
3843
- .fs-cont {
3844
- padding-right: 15px;
3845
- white-space: nowrap;
3846
- overflow: hidden;
3847
- text-overflow: ellipsis;
3848
- flex-grow: 1;
3716
+ input {
3717
+ flex: 1;
3718
+ border: none;
3719
+ outline: none;
3720
+ background: transparent;
3721
+ height: 100%;
3722
+ padding: 0;
3723
+ margin: 0;
3849
3724
  }
3850
3725
 
3851
- .icon-bofang1 {
3852
- font-size: 12px;
3853
- transition: transform 0.2s ease;
3726
+ .dynamic-placeholder-input::placeholder {
3727
+ color: var(--placeholder-color, #999);
3728
+ opacity: 1;
3854
3729
  }
3855
-
3856
- .rotate-180 {
3857
- transform: rotate(180deg) !important;
3730
+ .dynamic-placeholder-input::-webkit-input-placeholder {
3731
+ color: var(--placeholder-color, #999);
3858
3732
  }
3859
-
3860
- .f-real {
3861
- position: absolute;
3862
- left: 0;
3863
- top: 0;
3864
- width: 100%;
3865
- height: 100%;
3866
- z-index: 1;
3867
- opacity: 0;
3868
- cursor: pointer;
3733
+ .dynamic-placeholder-input::-moz-placeholder {
3734
+ color: var(--placeholder-color, #999);
3735
+ opacity: 1;
3869
3736
  }
3870
-
3871
- .dropdown-menu {
3872
- box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
3737
+ .dynamic-placeholder-input:-ms-input-placeholder {
3738
+ color: var(--placeholder-color, #999);
3873
3739
  }
3874
3740
 
3875
- .dropdown-item {
3876
- padding: 8px 10px;
3877
- cursor: pointer;
3878
- transition: background-color 0.2s;
3741
+ /* 安卓特定样式 */
3742
+ @supports (-webkit-touch-callout: none) {
3743
+ .input-wrapper {
3744
+ position: relative;
3745
+ z-index: 1;
3746
+ }
3879
3747
  }
3880
3748
 
3881
- .dropdown-item:hover {
3882
- background-color: #f5f5f5;
3749
+ /* 移动设备键盘弹出时的调整 */
3750
+ @media screen and (max-aspect-ratio: 13/9) {
3751
+ .form-input {
3752
+ position: relative;
3753
+ margin-bottom: env(keyboard-inset-height, 0px);
3754
+ }
3883
3755
  }
3884
-
3885
- .dropdown-item.selected {
3886
- background-color: #e6f7ff;
3887
- color: #1890ff;
3756
+ .form-submit {
3757
+ cursor: pointer;
3758
+ transition: all 0.2s;
3759
+ outline: none;
3760
+ border: none;
3888
3761
  }
3889
3762
 
3890
- .f-select .fs-tit .icon-bofang1 {
3891
- position: absolute;
3892
- right: 10px;
3893
- font-size: 12px;
3894
- display: inline-block;
3895
- transform: rotate(90deg);
3763
+ .form-submit:hover {
3764
+ opacity: 0.9;
3765
+ transform: translateY(-1px);
3896
3766
  }
3897
3767
 
3898
- .icon-bofang1:before {
3899
- content: "\E6CF";
3768
+ .form-submit:active {
3769
+ opacity: 0.8;
3770
+ transform: translateY(0);
3900
3771
  }
3901
3772
 
3902
- .has-error {
3903
- border-color: #ff4d4f !important;
3773
+ .form-submit:disabled {
3774
+ opacity: 0.6;
3775
+ cursor: not-allowed;
3776
+ transform: none !important;
3904
3777
  }
3905
3778
 
3906
- .error-tip {
3779
+ /* 统一错误提示样式 */
3780
+ .tip-cover {
3907
3781
  position: fixed;
3908
3782
  left: 0;
3909
3783
  top: 0;
3910
3784
  width: 100%;
3911
3785
  height: 100%;
3912
- z-index: 1000;
3913
- }.ele-form {
3786
+ display: flex;
3787
+ align-items: center;
3788
+ justify-content: center;
3789
+ z-index: 999;
3790
+ background-color: rgba(0,0,0,.7);
3791
+ }
3792
+
3793
+ .tip {
3794
+ width: 80%;
3795
+ max-width: 250px;
3796
+ padding: 10px;
3797
+ border-radius: 5px;
3798
+ background-color: #fff;
3799
+ }
3800
+
3801
+ .tip-btn {
3802
+ display: block;
3803
+ margin: 25px auto;
3804
+ width: 120px;
3805
+ height: 30px;
3806
+ color: #fff;
3807
+ border-radius: 4px;
3808
+ text-align: center;
3809
+ font-size: 14px;
3810
+ line-height: 30px;
3811
+ background: #ed5566;
3812
+ cursor: pointer;
3813
+ }
3814
+
3815
+ .tip-content {
3816
+ font-size: 14px;
3817
+ padding-top: 30px;
3818
+ text-align: center;
3819
+ }
3820
+ .global.video {
3821
+ width: 35px;
3822
+ height: 55px;
3823
+ border-radius: 50%;
3824
+ text-align: center;
3825
+ margin-bottom: 5px;
3826
+ border: 2px solid #fff;
3827
+ cursor: pointer;
3828
+ }
3829
+ .icon-shipin2:before { content: "\E611"; }
3830
+ .iconfont { font-family: iconfont !important; font-size: 30px; font-style: normal; }
3831
+ .global.video > span { font-size: 10px; line-height: 20px; display: block; position: relative; top: -4px;
3832
+ }
3833
+ .ele-form {
3914
3834
  position: absolute;
3915
3835
  user-select: none;
3916
3836
  }
@@ -4401,19 +4321,101 @@ html, body {
4401
4321
  }
4402
4322
  .icon-liuyan:before { content: "\E636"; }
4403
4323
  .iconfont { font-family: iconfont !important; font-size: 30px; font-style: normal; }
4404
- .global.receipt > span { font-size: 10px; line-height: 20px; display: block; }
4405
- .global.tel {
4406
- width: 35px;
4407
- height: 55px;
4408
- border-radius: 50%;
4409
- text-align: center;
4410
- margin-bottom: 15px;
4411
- border: 2px solid #fff;
4412
- cursor: pointer;
4413
- }
4414
- .icon-dianhua:before { content: "\E60E"; }
4415
- .iconfont { font-family: iconfont !important; font-size: 30px; font-style: normal; }
4416
- .global.tel > span { font-size: 10px; line-height: 20px; display: block;}
4324
+ .global.receipt > span { font-size: 10px; line-height: 20px; display: block; }.ele-form {
4325
+ position: absolute;
4326
+ user-select: none;
4327
+ }
4328
+
4329
+ .f-single {
4330
+ cursor: pointer;
4331
+ }
4332
+
4333
+ .ani-wrap {
4334
+ position: relative;
4335
+ }
4336
+
4337
+ .f-single .ani-wrap .fs-tit {
4338
+ display: flex;
4339
+ padding: 0 5px;
4340
+ height: 40px;
4341
+ align-items: center;
4342
+ white-space: nowrap;
4343
+ overflow: hidden;
4344
+ text-overflow: ellipsis;
4345
+ border-bottom: 1px solid rgba(153, 153, 153, 1);
4346
+ }
4347
+
4348
+ .require {
4349
+ padding: 0 5px 0 0;
4350
+ color: red;
4351
+ vertical-align: middle;
4352
+ }
4353
+
4354
+ .f-single ul {
4355
+ padding: 15px;
4356
+ margin: 0;
4357
+ list-style: none;
4358
+ }
4359
+
4360
+ .f-single ul li {
4361
+ display: flex;
4362
+ align-items: center;
4363
+ margin-top: 12px;
4364
+ font-size: 0;
4365
+ }
4366
+
4367
+ .f-single ul li:first-child {
4368
+ margin-top: 0;
4369
+ }
4370
+
4371
+ .fs-circle {
4372
+ display: inline-block;
4373
+ width: 16px;
4374
+ height: 16px;
4375
+ border-radius: 50%;
4376
+ position: relative;
4377
+ transition: all 0.2s;
4378
+ }
4379
+
4380
+ .fs-circle.selected {
4381
+ background-color: #2687f1;
4382
+ border-color: #2687f1 !important;
4383
+ }
4384
+
4385
+ .fs-circle.selected::after {
4386
+ content: "";
4387
+ position: absolute;
4388
+ top: 3px;
4389
+ left: 3px;
4390
+ width: 8px;
4391
+ height: 8px;
4392
+ border-radius: 50%;
4393
+ background-color: white;
4394
+ }
4395
+
4396
+ .fs-txt {
4397
+ display: inline-block;
4398
+ width: calc(100% - 16px);
4399
+ padding-left: 8px;
4400
+ vertical-align: top;
4401
+ word-break: break-all;
4402
+ font-size: 14px;
4403
+ line-height: 1.2;
4404
+ }
4405
+
4406
+ .has-error .fs-tit {
4407
+ border-bottom-color: #ff4d4f;
4408
+ }
4409
+
4410
+ /* 错误提示样式 */
4411
+ .error-tip {
4412
+ position: fixed;
4413
+ left: 0;
4414
+ top: 0;
4415
+ width: 100%;
4416
+ height: 100%;
4417
+ z-index: 1000;
4418
+ }
4417
4419
  .global.map {
4418
4420
  width: 35px;
4419
4421
  height: 55px;
@@ -4426,16 +4428,15 @@ html, body {
4426
4428
  .icon-daohang1:before { content: "\E612"; }
4427
4429
  .iconfont { font-family: iconfont !important; font-size: 30px; font-style: normal; }
4428
4430
  .global.map > span { font-size: 10px; line-height: 20px; display: block;}
4429
- .global.video {
4431
+ .global.tel {
4430
4432
  width: 35px;
4431
4433
  height: 55px;
4432
4434
  border-radius: 50%;
4433
4435
  text-align: center;
4434
- margin-bottom: 5px;
4436
+ margin-bottom: 15px;
4435
4437
  border: 2px solid #fff;
4436
4438
  cursor: pointer;
4437
4439
  }
4438
- .icon-shipin2:before { content: "\E611"; }
4440
+ .icon-dianhua:before { content: "\E60E"; }
4439
4441
  .iconfont { font-family: iconfont !important; font-size: 30px; font-style: normal; }
4440
- .global.video > span { font-size: 10px; line-height: 20px; display: block; position: relative; top: -4px;
4441
- }
4442
+ .global.tel > span { font-size: 10px; line-height: 20px; display: block;}