Blame view

styles/mixins/checkbox.less 3.96 KB
6c5fbd8b   梁灏   add Checkbox UI
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
  .checkboxFn(@checkbox-prefix-cls: ~"@{css-prefix}checkbox") {
      @checkbox-inner-prefix-cls: ~"@{checkbox-prefix-cls}-inner";
  
      // 普通状态
      .@{checkbox-prefix-cls} {
          display: inline-block;
          vertical-align: middle;
          white-space: nowrap;
          cursor: pointer;
          outline: none;
          line-height: 1;
          position: relative;
  
          &:hover {
              .@{checkbox-inner-prefix-cls} {
                  border-color: #bcbcbc;
              }
          }
  
          &-inner {
              display: inline-block;
              width: 16px;
              height: 16px;
              position: relative;
              top: 0;
              left: 0;
              border: 1px solid @border-color-base;
              border-radius: 3px;
              background-color: #fff;
              .transition2(border-color @transition-time @ease-in-out,background-color @transition-time @ease-in-out);
  
              &:after {
                  content: '';
                  display: table;
                  width: 5px;
                  height: 8px;
                  position: absolute;
                  top: 2px;
                  left: 4px;
                  border: 2px solid #fff;
                  border-top: 0;
                  border-left: 0;
                  .transform(rotate(45deg) scale(0));
                  .transition(all @transition-time @ease-in-out);
              }
          }
  
          &-input {
              width: 100%;
              height: 100%;
              position: absolute;
              top: 0;
              bottom: 0;
              left: 0;
              right: 0;
              z-index: 1;
              cursor: pointer;
              opacity: 0;
          }
      }
  
      // 选中状态
      .@{checkbox-prefix-cls}-checked {
  
          &:hover {
              .@{checkbox-inner-prefix-cls} {
                  border-color: @primary-color;
              }
          }
  
          .@{checkbox-inner-prefix-cls} {
              border-color: @primary-color;
              background-color: @primary-color;
  
              &:after {
                  content: '';
                  display: table;
                  width: 5px;
                  height: 8px;
                  position: absolute;
                  top: 2px;
                  left: 4px;
                  border: 2px solid #fff;
                  border-top: 0;
                  border-left: 0;
                  .transform(rotate(45deg) scale(1));
07aa688e   梁灏   add Switch UI
87
                  .transition(all @transition-time @ease-in-out);
6c5fbd8b   梁灏   add Checkbox UI
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
              }
          }
      }
  
      // 禁用
      .@{checkbox-prefix-cls}-disabled {
          &.@{checkbox-prefix-cls}-checked {
              &:hover {
                  .@{checkbox-inner-prefix-cls} {
                      border-color: @border-color-base;
                  }
              }
  
              .@{checkbox-inner-prefix-cls} {
                  background-color: #f3f3f3;
                  border-color: @border-color-base;
  
                  &:after {
                      animation-name: none;
                      border-color: #ccc;
                  }
              }
          }
  
          &:hover {
              .@{checkbox-inner-prefix-cls} {
                  border-color: @border-color-base;
              }
          }
  
          .@{checkbox-inner-prefix-cls} {
              border-color: @border-color-base;
              background-color: #f3f3f3;
              &:after {
                  animation-name: none;
                  border-color: #f3f3f3;
              }
          }
  
          .@{checkbox-inner-prefix-cls}-input {
              cursor: default;
          }
  
          & + span {
              color: #ccc;
              cursor: @cursor-disabled;
          }
      }
  
      .@{checkbox-prefix-cls}-wrapper {
          cursor: pointer;
          font-size: @font-size-base;
          display: inline-block;
          & + & {
              margin-left: 8px;
          }
      }
  
      .@{checkbox-prefix-cls}-wrapper + span,
      .@{checkbox-prefix-cls} + span {
07aa688e   梁灏   add Switch UI
148
149
          margin-left: 4px;
          margin-right: 4px;
6c5fbd8b   梁灏   add Checkbox UI
150
151
152
153
154
155
156
157
158
      }
  
      .@{checkbox-prefix-cls}-group {
          font-size: @font-size-base;
          &-item {
              display: inline-block;
          }
      }
  }