blob: 7f2f3502d73dabc35fd3372cd59c1d4eebff3b34 [file] [log] [blame]
86133aaa3f5d2025-04-20 21:33:29 +08001/*!
2 * Cropper.js v1.5.13
3 * https://fengyuanchen.github.io/cropperjs
4 *
5 * Copyright 2015-present Chen Fengyuan
6 * Released under the MIT license
7 *
8 * Date: 2022-11-20T05:30:43.444Z
9 */
10
11.cropper-container {
12 direction: ltr;
13 font-size: 0;
14 line-height: 0;
15 position: relative;
16 -ms-touch-action: none;
17 touch-action: none;
18 -webkit-user-select: none;
19 -moz-user-select: none;
20 -ms-user-select: none;
21 user-select: none;
22}
23
24.cropper-container img {
25 -webkit-backface-visibility: hidden;
26 backface-visibility: hidden;
27 display: block;
28 height: 100%;
29 image-orientation: 0deg;
30 max-height: none !important;
31 max-width: none !important;
32 min-height: 0 !important;
33 min-width: 0 !important;
34 width: 100%;
35 }
36
37.cropper-wrap-box,
38.cropper-canvas,
39.cropper-drag-box,
40.cropper-crop-box,
41.cropper-modal {
42 bottom: 0;
43 left: 0;
44 position: absolute;
45 right: 0;
46 top: 0;
47}
48
49.cropper-wrap-box,
50.cropper-canvas {
51 overflow: hidden;
52}
53
54.cropper-drag-box {
55 background-color: #fff;
56 opacity: 0;
57}
58
59.cropper-modal {
60 background-color: #000;
61 opacity: 0.5;
62}
63
64.cropper-view-box {
65 display: block;
66 height: 100%;
67 outline: 1px solid #39f;
68 outline-color: rgba(51, 153, 255, 75%);
69 overflow: hidden;
70 width: 100%;
71}
72
73.cropper-dashed {
74 border: 0 dashed #eee;
75 display: block;
76 opacity: 0.5;
77 position: absolute;
78}
79
80.cropper-dashed.dashed-h {
81 border-bottom-width: 1px;
82 border-top-width: 1px;
83 height: calc(100% / 3);
84 left: 0;
85 top: calc(100% / 3);
86 width: 100%;
87 }
88
89.cropper-dashed.dashed-v {
90 border-left-width: 1px;
91 border-right-width: 1px;
92 height: 100%;
93 left: calc(100% / 3);
94 top: 0;
95 width: calc(100% / 3);
96 }
97
98.cropper-center {
99 display: block;
100 height: 0;
101 left: 50%;
102 opacity: 0.75;
103 position: absolute;
104 top: 50%;
105 width: 0;
106}
107
108.cropper-center::before,
109 .cropper-center::after {
110 background-color: #eee;
111 content: " ";
112 display: block;
113 position: absolute;
114 }
115
116.cropper-center::before {
117 height: 1px;
118 left: -3px;
119 top: 0;
120 width: 7px;
121 }
122
123.cropper-center::after {
124 height: 7px;
125 left: 0;
126 top: -3px;
127 width: 1px;
128 }
129
130.cropper-face,
131.cropper-line,
132.cropper-point {
133 display: block;
134 height: 100%;
135 opacity: 0.1;
136 position: absolute;
137 width: 100%;
138}
139
140.cropper-face {
141 background-color: #fff;
142 left: 0;
143 top: 0;
144}
145
146.cropper-line {
147 background-color: #39f;
148}
149
150.cropper-line.line-e {
151 cursor: ew-resize;
152 right: -3px;
153 top: 0;
154 width: 5px;
155 }
156
157.cropper-line.line-n {
158 cursor: ns-resize;
159 height: 5px;
160 left: 0;
161 top: -3px;
162 }
163
164.cropper-line.line-w {
165 cursor: ew-resize;
166 left: -3px;
167 top: 0;
168 width: 5px;
169 }
170
171.cropper-line.line-s {
172 bottom: -3px;
173 cursor: ns-resize;
174 height: 5px;
175 left: 0;
176 }
177
178.cropper-point {
179 background-color: #39f;
180 height: 5px;
181 opacity: 0.75;
182 width: 5px;
183}
184
185.cropper-point.point-e {
186 cursor: ew-resize;
187 margin-top: -3px;
188 right: -3px;
189 top: 50%;
190 }
191
192.cropper-point.point-n {
193 cursor: ns-resize;
194 left: 50%;
195 margin-left: -3px;
196 top: -3px;
197 }
198
199.cropper-point.point-w {
200 cursor: ew-resize;
201 left: -3px;
202 margin-top: -3px;
203 top: 50%;
204 }
205
206.cropper-point.point-s {
207 bottom: -3px;
208 cursor: s-resize;
209 left: 50%;
210 margin-left: -3px;
211 }
212
213.cropper-point.point-ne {
214 cursor: nesw-resize;
215 right: -3px;
216 top: -3px;
217 }
218
219.cropper-point.point-nw {
220 cursor: nwse-resize;
221 left: -3px;
222 top: -3px;
223 }
224
225.cropper-point.point-sw {
226 bottom: -3px;
227 cursor: nesw-resize;
228 left: -3px;
229 }
230
231.cropper-point.point-se {
232 bottom: -3px;
233 cursor: nwse-resize;
234 height: 20px;
235 opacity: 1;
236 right: -3px;
237 width: 20px;
238 }
239
240@media (min-width: 768px) {
241
242.cropper-point.point-se {
243 height: 15px;
244 width: 15px;
245 }
246 }
247
248@media (min-width: 992px) {
249
250.cropper-point.point-se {
251 height: 10px;
252 width: 10px;
253 }
254 }
255
256@media (min-width: 1200px) {
257
258.cropper-point.point-se {
259 height: 5px;
260 opacity: 0.75;
261 width: 5px;
262 }
263 }
264
265.cropper-point.point-se::before {
266 background-color: #39f;
267 bottom: -50%;
268 content: " ";
269 display: block;
270 height: 200%;
271 opacity: 0;
272 position: absolute;
273 right: -50%;
274 width: 200%;
275 }
276
277.cropper-invisible {
278 opacity: 0;
279}
280
281.cropper-bg {
282 background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC");
283}
284
285.cropper-hide {
286 display: block;
287 height: 0;
288 position: absolute;
289 width: 0;
290}
291
292.cropper-hidden {
293 display: none !important;
294}
295
296.cropper-move {
297 cursor: move;
298}
299
300.cropper-crop {
301 cursor: crosshair;
302}
303
304.cropper-disabled .cropper-drag-box,
305.cropper-disabled .cropper-face,
306.cropper-disabled .cropper-line,
307.cropper-disabled .cropper-point {
308 cursor: not-allowed;
309}