UNPKG

shineout

Version:

Shein 前端组件库

527 lines (526 loc) 14.1 kB
.so-upload-rtl { direction: rtl; text-align: right; } .so-upload-handle { display: inline-block; margin-bottom: 8px; cursor: pointer; } .so-upload-hide-list .so-upload-handle { margin-bottom: 0; } .so-upload-view-value, .so-upload-view-file { position: relative; padding: 4px 10px; -webkit-transition: background 0.2s; transition: background 0.2s; } .so-upload-view-value .so-upload-text, .so-upload-view-file .so-upload-text { word-break: break-all; } .so-upload-view-value .so-upload-text-ltr, .so-upload-view-file .so-upload-text-ltr { margin-right: 20px; } .so-upload-view-value .so-upload-text-rtl, .so-upload-view-file .so-upload-text-rtl { margin-left: 20px; } .so-upload-view-value .so-upload-delete, .so-upload-view-file .so-upload-delete, .so-upload-view-value .so-upload-recover, .so-upload-view-file .so-upload-recover { position: absolute; top: 2px; width: 12px; height: 12px; color: var(--danger-color, #f85555); font-size: 16px; vertical-align: middle; right: 10px; } .so-upload-rtl .so-upload-view-value .so-upload-delete, .so-upload-rtl .so-upload-view-file .so-upload-delete, .so-upload-rtl .so-upload-view-value .so-upload-recover, .so-upload-rtl .so-upload-view-file .so-upload-recover { left: 10px; right: auto; } .so-upload-view-value .so-upload-delete svg, .so-upload-view-file .so-upload-delete svg, .so-upload-view-value .so-upload-recover svg, .so-upload-view-file .so-upload-recover svg { width: 12px; height: 12px; } .so-upload-view-value .so-upload-delete:active, .so-upload-view-file .so-upload-delete:active, .so-upload-view-value .so-upload-recover:active, .so-upload-view-file .so-upload-recover:active { text-decoration: none; } .so-upload-view-value .so-upload-delete svg, .so-upload-view-file .so-upload-delete svg { width: 10px; height: 10px; fill: var(--gray-300, #dee2e6); } .so-upload-view-value .so-upload-recover svg, .so-upload-view-file .so-upload-recover svg { fill: var(--primary-color, #3399ff); } .so-upload-view-value:hover, .so-upload-view-file:hover { background: #f5f5f5; } .so-upload-view-value:hover .so-upload-delete svg, .so-upload-view-file:hover .so-upload-delete svg { fill: var(--danger-color, #f85555); } .so-upload-view-value.so-upload-to-be-delete, .so-upload-view-file.so-upload-to-be-delete { color: var(--gray-400, #ced4da); text-decoration: line-through; } .so-upload-view-value.so-upload-error, .so-upload-view-file.so-upload-error { color: var(--danger-color, #f85555); } .so-upload.so-upload-file-drop .so-upload-drop .so-upload-handle { border-color: var(--primary-color, #3399ff); } .so-upload.so-upload-file-drop .so-upload-handle { position: relative; width: 100%; border: dashed 1px var(--gray-400, #ced4da); -webkit-transition: border-color 0.2s; transition: border-color 0.2s; } .so-upload.so-upload-file-drop .so-upload-handle:not(.so-upload-disabled):hover { border-color: var(--primary-color, #3399ff); } .so-upload.so-upload-file-drop .so-upload-handle.so-upload-disabled:hover { cursor: not-allowed; } .so-upload-view-value.so-upload-view-active { background: #f5f5f5; } .so-upload-view-value.so-upload-view-active .so-upload-delete svg { fill: var(--danger-color, #f85555); } .so-upload-view-file .so-upload-delete svg { fill: var(--danger-color, #f85555); } .so-upload-view-file .so-upload-progress { margin-top: 2px; } .so-upload-image-item { position: relative; display: inline-block; border: dashed 1px var(--gray-400, #ced4da); background: #fff; border-radius: 2px; vertical-align: top; } .so-upload-image-item:hover .so-upload-image-options { opacity: 1; visibility: visible; } .so-upload-image-item .so-upload-image-options { border-radius: 2px; padding: 0 2px; -webkit-transition: all 0.2s; transition: all 0.2s; position: absolute; top: 4px; left: 4px; right: 4px; bottom: 4px; background: rgba(0, 0, 0, 0.4); display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-pack: distribute; justify-content: space-around; opacity: 0; visibility: hidden; } .so-upload-image-item .so-upload-image-options .so-upload-options-item { width: 20px; height: 20px; fill: var(--gray-300, #dee2e6); -webkit-transition: all 0.2s; transition: all 0.2s; } .so-upload-image-item .so-upload-image-options .so-upload-options-item:hover { fill: #fff; } .so-upload-image-item .so-upload-image-options.so-upload-image-active { opacity: 1; visibility: visible; } .so-upload-image-item .so-upload-image-options.so-upload-image-active .so-upload-options-remove { fill: #fff; } .so-upload-image-item .so-upload-image-bg { position: absolute; z-index: 0; top: 4px; right: 4px; bottom: 4px; left: 4px; background-size: cover; } .so-upload-image-item .so-upload-progress-bg { position: absolute; z-index: 1; top: 0; right: 0; bottom: 0; left: 0; background: rgba(0, 0, 0, 0.3); border-radius: inherit; } .so-upload-image-item .so-upload-progress { position: absolute; z-index: 10; right: 4px; bottom: 4px; left: 4px; } .so-upload-image-item .so-upload-delete { cursor: pointer; } .so-upload-image-item .so-upload-delete:after, .so-upload-image-item .so-upload-delete:before { position: absolute; left: 50%; top: 2px; content: ''; display: inline-block; width: 1px; height: 10px; background: #fff; } .so-upload-image-item .so-upload-delete:after { -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); } .so-upload-image-item .so-upload-delete:before { -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); } .so-upload-image-item .so-upload-delete, .so-upload-image-item .so-upload-recover { position: absolute; z-index: 100; top: -7px; right: -7px; display: -webkit-box; display: -ms-flexbox; display: flex; width: 14px; height: 14px; background: var(--danger-color, #f85555); border-radius: 8px; } .so-upload-rtl .so-upload-image-item .so-upload-delete, .so-upload-rtl .so-upload-image-item .so-upload-recover { right: auto; left: -7px; } .so-upload-image-item .so-upload-delete svg, .so-upload-image-item .so-upload-recover svg { width: 6px; height: 6px; margin: auto; fill: #ffffff; } .so-upload-image-item .so-upload-recover { background: var(--primary-color, #3399ff); } .so-upload-image-item .so-upload-recover svg { width: 8px; height: 8px; } .so-upload-image-item.so-upload-error { border-color: var(--danger-color, #f85555); } .so-upload-image-item.so-upload-error .so-upload-message { position: absolute; z-index: 1000; top: 100%; left: 50%; width: -webkit-max-content; width: -moz-max-content; width: max-content; min-width: 120px; max-width: 240px; padding: 5px 10px; margin-top: 8px; background: var(--gray-100, #f8f9fa); border-radius: var(--input-border-radius, 4px); -webkit-box-shadow: 0 0 0 1px #ebccd1, 0 2px 8px rgba(0, 0, 0, 0.15); box-shadow: 0 0 0 1px #ebccd1, 0 2px 8px rgba(0, 0, 0, 0.15); color: var(--danger-color, #f85555); font-size: 12px; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); -webkit-transform-origin: 0 0; -ms-transform-origin: 0 0; transform-origin: 0 0; } .so-upload-image-item.so-upload-error .so-upload-message:before { position: absolute; bottom: 100%; left: 50%; width: 6px; height: 6px; border: solid 1px #ebccd1; border-width: 1px 0 0 1px; background: inherit; content: ' '; -webkit-transform: rotate(45deg) translateY(3px); -ms-transform: rotate(45deg) translateY(3px); transform: rotate(45deg) translateY(3px); } .so-upload-image-item.so-upload-error .so-upload-progress-bg { display: none; } .so-upload-dragger-wrapper { display: block; width: 100%; } .so-upload-dragger-area { position: relative; color: rgba(0, 0, 0, 0.8); padding: 16px; width: 100%; height: 100%; text-align: center; background: #fafafa; border-radius: 2px; cursor: pointer; } .so-upload-dragger-area :after { content: ''; display: block; top: -1px; left: -1px; right: -1px; bottom: -1px; position: absolute; border-radius: 2px; border: 1px dashed var(--gray-400, #ced4da); -webkit-transition: border-color 0.3s; transition: border-color 0.3s; } .so-upload-dragger-area:hover :after { border-color: var(--primary-color, #3399ff); } .so-upload-dragger-area.so-upload-disabled { cursor: not-allowed; } .so-upload-dragger-area.so-upload-disabled :after { border: 1px dashed var(--gray-400, #ced4da); } .so-upload-drop .so-upload-image-plus, .so-upload-drop .so-upload-image-item { border-color: var(--primary-color, #3399ff); } .so-upload-drop .so-upload-dragger-area :after { border-color: var(--primary-color, #3399ff); } .so-upload-image-plus { position: relative; display: -webkit-inline-box; display: -ms-inline-flexbox; display: inline-flex; vertical-align: top; } .so-upload-image-plus.so-upload-disabled { cursor: not-allowed; } .so-upload-image-plus.so-upload-disabled:hover, .so-upload-image-plus.so-upload-disabled:focus { border-color: var(--gray-400, #ced4da); } .so-upload-image-plus.so-upload-disabled:hover .so-upload-indicator:before, .so-upload-image-plus.so-upload-disabled:focus .so-upload-indicator:before, .so-upload-image-plus.so-upload-disabled:hover .so-upload-indicator:after, .so-upload-image-plus.so-upload-disabled:focus .so-upload-indicator:after { background: #999; } .so-upload-image-plus .so-upload-indicator { position: absolute; top: 50%; left: 50%; width: 30px; height: 30px; margin: -15px -15px; } .so-upload-image-plus .so-upload-indicator:before, .so-upload-image-plus .so-upload-indicator:after { position: absolute; display: block; background: #999; content: ' '; } .so-upload-image-plus .so-upload-indicator:before { left: 14px; width: 2px; height: 30px; } .so-upload-image-plus .so-upload-indicator:after { top: 14px; width: 30px; height: 2px; } .so-upload-image-plus:hover, .so-upload-image-plus:focus { border-color: var(--primary-color, #3399ff); } .so-upload-image-plus:hover .so-upload-indicator:before, .so-upload-image-plus:focus .so-upload-indicator:before, .so-upload-image-plus:hover .so-upload-indicator:after, .so-upload-image-plus:focus .so-upload-indicator:after { background: var(--primary-color, #3399ff); } .so-upload-image-plus:focus { outline: none; } .so-upload-image-result { border-style: solid; } .so-upload-image-result .so-upload-delete { visibility: hidden; } .so-upload-image-result:hover .so-upload-delete { visibility: visible; } .so-upload-image-result.so-upload-to-be-delete { border-style: dashed; } .so-upload-image-result.so-upload-to-be-delete .so-upload-image-bg { -webkit-filter: grayscale(100%); filter: grayscale(100%); opacity: 0.6; } .so-upload-button { position: relative; overflow: hidden; } .so-upload-button .so-upload-bg { overflow: hidden; z-index: 2; position: absolute; top: 0; bottom: 0; left: 0; background: inherit; -webkit-transition: right 0.2s ease-in-out; transition: right 0.2s ease-in-out; color: #fff; white-space: nowrap; } .so-upload-rtl .so-upload-button .so-upload-bg { auto: 0; right: 0; } .so-upload-button .so-upload-bg-spin { display: inline-block; margin-right: 8px; } .so-upload-rtl .so-upload-button .so-upload-bg-spin { margin-left: 8px; } .so-upload-button .so-upload-bg > span { display: inline-block; margin: var(--button-padding-base-vertical, 6px) var(--button-padding-base-horizontal, 12px); } .so-upload-button .so-upload-cover { position: absolute; left: 0; right: 0; bottom: 0; top: 0; background: #fff; } .so-upload-button > span { position: relative; z-index: 1; } .so-upload-button.so-upload-uploading { color: var(--button-default-text-color, #333); } .so-upload-button.so-button-default .so-upload-bg { background: var(--primary-color, #3399ff); } .so-upload-button.so-button-small .so-upload-bg > span { margin: var(--button-padding-small-vertical, 5px) var(--button-padding-small-horizontal, 10px); } .so-upload-button.so-button-large .so-upload-bg > span { margin: var(--button-padding-large-vertical, 8px) var(--button-padding-large-horizontal, 16px); } .so-upload-url-invalid-border { border-color: var(--danger-color, #f85555) !important; } .so-upload-url-invalid-indicator:before, .so-upload-url-invalid-indicator:after { background: var(--danger-color, #f85555) !important; } .so-upload-url-invalid-message { position: absolute; z-index: 1000; top: 100%; left: 50%; width: -webkit-max-content; width: -moz-max-content; width: max-content; min-width: 120px; max-width: 240px; padding: 5px 10px; margin-top: 8px; background: var(--gray-100, #f8f9fa); border-radius: var(--input-border-radius, 4px); -webkit-box-shadow: 0 0 0 1px #ebccd1, 0 2px 8px rgba(0, 0, 0, 0.15); box-shadow: 0 0 0 1px #ebccd1, 0 2px 8px rgba(0, 0, 0, 0.15); color: var(--danger-color, #f85555); font-size: 12px; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); -webkit-transform-origin: 0 0; -ms-transform-origin: 0 0; transform-origin: 0 0; } .so-upload-url-invalid-message:before { position: absolute; bottom: 100%; left: 50%; width: 6px; height: 6px; border: solid 1px #ebccd1; border-width: 1px 0 0 1px; background: inherit; content: ' '; -webkit-transform: rotate(45deg) translateY(3px); -ms-transform: rotate(45deg) translateY(3px); transform: rotate(45deg) translateY(3px); } .so-gap .so-upload-handle { margin-bottom: 0; }