UNPKG

9.41 kBSCSSView Raw
1@charset "UTF-8";
2
3@import "../core/index-noreset.scss";
4@import "scss/mixin";
5@import "scss/variable";
6
7#{$form-prefix} {
8 @include box-sizing;
9
10 &-preview.#{$css-prefix}form-item {
11 #{$form-prefix}-item-label {
12 color: $form-element-preview-label-color;
13 }
14 #{$form-prefix}-preview {
15 color: $form-element-preview-text-color;
16 }
17
18 &.#{$css-prefix}medium {
19 #{$form-prefix}-item-label {
20 font-size: $form-element-medium-preview-label-font-size;
21 line-height: $form-element-medium-preview-height;
22 }
23 }
24 &.#{$css-prefix}small {
25 #{$form-prefix}-item-label {
26 font-size: $form-element-small-preview-label-font-size;
27 line-height: $form-element-small-preview-height;
28 }
29 }
30 &.#{$css-prefix}large {
31 #{$form-prefix}-item-label {
32 font-size: $form-element-large-preview-label-font-size;
33 line-height: $form-element-large-preview-height;
34 }
35 }
36 }
37 &-responsive-grid {
38 #{$form-prefix}-item-control {
39 flex: 1;
40 }
41
42 #{$form-prefix}-item {
43 margin-bottom: 0;
44 }
45
46 #{$form-prefix}-item.#{$css-prefix}left {
47 display: flex;
48 }
49
50 &.#{$css-prefix}small {
51 @include form-responsive-grid(
52 $form-inline-s-item-margin-r,
53 $form-element-small-height,
54 $form-element-small-font-size
55 );
56 }
57
58 &.#{$css-prefix}medium {
59 @include form-responsive-grid(
60 $form-inline-m-item-margin-r,
61 $form-element-medium-height,
62 $form-element-medium-font-size
63 );
64 }
65
66 &.#{$css-prefix}large {
67 @include form-responsive-grid(
68 $form-inline-l-item-margin-r,
69 $form-element-large-height,
70 $form-element-large-font-size
71 );
72 }
73
74 // #{$form-prefix}-item.#{$css-prefix}left {
75 // display: flex;
76 // &:not(:last-child) {
77 // #{$form-prefix}-item-label {
78 // line-height: 1.4;
79 // margin-top: ($form-element-medium-height - $form-element-medium-font-size) / 2;
80 // margin-bottom: ($form-element-medium-height - $form-element-medium-font-size) / 2;
81 // }
82 // }
83 // &.#{$css-prefix}large:not(:last-child) {
84 // #{$form-prefix}-item-label {
85 // line-height: 1.4;
86 // margin-top: ($form-element-large-height - $form-element-large-font-size) / 2;
87 // margin-bottom: ($form-element-large-height - $form-element-large-font-size) / 2;
88 // }
89 // }
90 // &.#{$css-prefix}small:not(:last-child) {
91 // #{$form-prefix}-item-label {
92 // line-height: 1.4;
93 // margin-top: ($form-element-small-height - $form-element-small-font-size) / 2;
94 // margin-bottom: ($form-element-small-height - $form-element-small-font-size) / 2;
95 // }
96 // }
97 // }
98 }
99
100 &-item {
101 &.has-error {
102 > #{$form-prefix}-item-control {
103 > #{$form-prefix}-item-help {
104 color: $form-error-color;
105 }
106 }
107 }
108 &.has-warning {
109 > #{$form-prefix}-item-control {
110 > #{$form-prefix}-item-help {
111 color: $form-warning-color;
112 }
113 }
114 }
115
116 /* medium */
117 // TODO: REMOVE the lastchild's margin-bottom in 2.x version
118 margin-bottom: $form-item-m-margin-b;
119 #{$form-prefix}-item-label, #{$form-prefix}-text-align, p {
120 line-height: $form-element-medium-height;
121 }
122 #{$form-prefix}-text-align, p {
123 margin: 0;
124 }
125
126 @include form-enhance(calc(#{$form-element-medium-height} - 4px));
127 @include form-preview($form-element-medium-preview-font-size, $form-element-medium-preview-height);
128
129 #{$form-prefix}-item-label {
130 font-size: $form-element-medium-font-size;
131
132 > label {
133 display: inline-block;
134 line-height: $font-lineheight-2;
135 }
136 }
137
138 &.#{$css-prefix}large {
139 margin-bottom: $form-item-l-margin-b;
140 #{$form-prefix}-item-label, #{$form-prefix}-text-align, p {
141 line-height: $form-element-large-height;
142 }
143
144 @include form-enhance(calc(#{$form-element-large-height} - 1px));
145 @include form-preview($form-element-large-preview-font-size, $form-element-large-preview-height);
146
147 .#{$css-prefix}switch {
148 margin-top: calc((#{$form-element-large-height} - 26px) / 2);
149 }
150
151 #{$form-prefix}-item-label {
152 font-size: $form-element-large-font-size;
153 }
154 }
155 &.#{$css-prefix}small {
156 margin-bottom: $form-item-s-margin-b;
157
158 #{$form-prefix}-item-label, #{$form-prefix}-text-align, p {
159 line-height: $form-element-small-height;
160 }
161
162 @include form-enhance($form-element-small-height);
163 @include form-preview($form-element-small-preview-font-size, $form-element-small-preview-height);
164
165 #{$form-prefix}-item-label {
166 font-size: $form-element-small-font-size;
167 }
168 }
169 &.#{$css-prefix}top > #{$form-prefix}-item-label {
170 margin-bottom: $form-top-label-margin-b;
171 }
172 &.#{$css-prefix}inset #{$form-prefix}-item-label {
173 padding-right: 0;
174 padding-left: 0;
175 line-height: inherit;
176 }
177 }
178 &-item-control {
179 #{$form-prefix}-text-align {
180 margin: 0;
181 }
182 > .#{$css-prefix}input-group, > .#{$css-prefix}input {
183 width: 100%;
184 }
185 }
186
187 &-item-fullwidth &-item-control {
188 > .#{$css-prefix}input-group,
189 > .#{$css-prefix}input,
190 > .#{$css-prefix}select,
191 > .#{$css-prefix}date-picker,
192 > .#{$css-prefix}month-picker,
193 > .#{$css-prefix}year-picker,
194 > .#{$css-prefix}range-picker,
195 > .#{$css-prefix}time-picker {
196 width: 100%;
197 }
198
199 > .#{$css-prefix}date-picker2 .#{$css-prefix}date-picker2-input input {
200 width: inherit;
201 }
202 }
203
204 &-item-label {
205 display: inline-block;
206 vertical-align: top;
207 color: $form-label-color;
208 text-align: right;
209 padding-right: $form-label-padding-r;
210
211 label[required]:before {
212 margin-right: 4px;
213 content: "*";
214 color: $form-error-color;
215 }
216 &.has-colon label::after {
217 content: ":";
218 position: relative;
219 top: -.5px;
220 margin: 0 0 0 2px;
221 }
222
223
224 &.#{$css-prefix}left {
225 text-align: left;
226
227 > label[required]::before {
228 display: none;
229 }
230 > label[required]::after {
231 margin-left: 4px;
232 content: "*";
233 color: $form-error-color;
234 }
235 }
236 }
237
238 &-item-help {
239 margin-top: $form-help-margin-top;
240 font-size: $form-help-font-size;
241 line-height: $font-lineheight-2;
242 color: $form-help-color;
243 }
244
245 &.#{$css-prefix}inline {
246 #{$form-prefix}-item {
247 display: inline-block;
248 vertical-align: top;
249
250 /* label on left */
251 &.#{$css-prefix}left #{$form-prefix}-item-control {
252 display: inline-block;
253 vertical-align: top;
254 line-height: 0;
255 }
256
257 &:not(:last-child) {
258 margin-right: $form-inline-m-item-margin-r;
259 }
260 &.#{$css-prefix}large:not(:last-child) {
261 margin-right: $form-inline-l-item-margin-r;
262 }
263 &.#{$css-prefix}small:not(:last-child) {
264 margin-right: $form-inline-s-item-margin-r;
265 }
266 }
267 }
268}
269
270@media screen and (min-width: 0\0) and (min-resolution: .001dpcm) {
271 #{$form-prefix}-item.#{$css-prefix}left > #{$form-prefix}-item-label {
272 display: table-cell;
273 }
274 #{$form-prefix}.#{$css-prefix}inline #{$form-prefix}-item.#{$css-prefix}left #{$form-prefix}-item-control {
275 display: table-cell;
276 }
277}
278
279#{$form-prefix}[dir="rtl"] {
280 #{$form-prefix}-item-label {
281 text-align: left;
282 padding-left: $form-label-padding-r;
283 padding-right: 0;
284 }
285 &.#{$css-prefix}inline {
286 #{$form-prefix}-item {
287 &:not(:last-child) {
288 margin-left: $form-inline-m-item-margin-r;
289 margin-right: 0;
290 }
291 &.#{$css-prefix}large:not(:last-child) {
292 margin-left: $form-inline-l-item-margin-r;
293 margin-right: 0;
294 }
295 &.#{$css-prefix}small:not(:last-child) {
296 margin-left: $form-inline-s-item-margin-r;
297 margin-right: 0;
298 }
299 }
300 }
301}