WebApp【公共组件库】@前端(For Git Submodule)
Tevin
2023-11-22 057e40f413c2ef93f6ec71dbb06c491d169c6c6f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
/**
 * switch
 * @author Tevin
 */
 
@import "../../common/sassMixin";
 
.c-switch {
    &.read-only {
        pointer-events: none;
        background-color: #f6f6f6;
        .at-switch {
            background-color: transparent;
        }
        .at-switch__container {
            background-color: transparent;
        }
    }
    .at-switch__title {
        font-size: 36px;
    }
    &.c-switch-required {
        .at-switch__title {
            &::before {
                display: block;
                position: absolute;
                top: 50%;
                left: -23px;
                margin-right: 8px;
                color: #FF4949;
                font-size: 28px;
                font-family: SimSun, sans-serif;
                line-height: 1;
                content: "*";
                transform: translateY(-50%);
            }
        }
    }
    &.c-switch-error {
        .at-switch__title {
            color: #FF4949;
        }
    }
    &.c-switch-radio {
        position: relative;
        .at-switch__title {
            flex: 4;
        }
        .at-switch__container {
            visibility: hidden;
        }
        .c-switch-radio-group {
            @include position(absolute, 50% n n 0);
            padding: 24px 32px 24px 0;
            transform: translateY(-50%);
        }
        .c-switch-radio-item {
            display: inline-block;
            padding-left: 24px;
        }
        .c-switch-radio-icon {
            @include flexbox(inline, center center);
            width: 48px;
            min-width: 48px;
            height: 48px;
            vertical-align: middle;
            color: transparent;
            font-size: 32px;
            line-height: 1;
            border: 1PX solid #c9c9c9;
            border-radius: 50%;
            background-color: #fff;
            box-sizing: border-box;
            transition: all .2s;
            &.checked {
                color: #fff;
                border: none;
                background-color: #2093df;
            }
        }
        .c-switch-radio-label {
            display: inline-block;
            vertical-align: middle;
            padding-left: 6px;
        }
    }
    &.c-switch-radio-left {
        .c-switch-radio-group {
            width: calc(100% - 214px);
            padding-right: 0;
            .c-switch-radio-item {
                padding-left: 0;
                padding-right: 24px;
            }
        }
    }
}