meri-design-dev
Version:
基于vue框架的ui库
440 lines (373 loc) • 9.15 kB
text/stylus
/*!
* @meri-design-dev v0.0.13
* (c) 2019-2020 wangyongcun
* Released under the MIT License.
* 2024-04-29 11:26:20
*/
.p-message-box
position: fixed
top: 36px
left: 0
text-align: center
display: flex
flex-flow: column wrap
justify-content: center
align-items: center
width: 100%
z-index: 9000
pointer-events: none
.fadeDownUpUi-enter-active
animation: fadeInDownUi .3s ease-out
.fadeDownUpUi-leave-active
animation: fadeOutUpUi .3s ease-in
@keyframes fadeInDownUi
from
opacity: 0
transform: translate3d(0,-100%,0)
to
opacity: 1
transform: translate3d(0,0,0)
@keyframes fadeInDownUi
from
opacity: 0
transform: translate3d(0,-100%,0)
to
opacity: 1
transform: translate3d(0,0,0)
@keyframes fadeInDownUi
from
opacity: 0
transform: translate3d(0,-100%,0)
to
opacity: 1
transform: translate3d(0,0,0)
@keyframes fadeInDownUi
from
opacity: 0
transform: translate3d(0,-100%,0)
to
opacity: 1
transform: translate3d(0,0,0)
@keyframes fadeOutUpUi
from
opacity: 1
to
opacity: 0
transform: translate3d(0,-100%,0)
@keyframes fadeOutUpUi
from
opacity: 1
to
opacity: 0
transform: translate3d(0,-100%,0)
@keyframes fadeOutUpUi
from
opacity: 1
to
opacity: 0
transform: translate3d(0,-100%,0)
@keyframes fadeOutUpUi
from
opacity: 1
to
opacity: 0
transform: translate3d(0,-100%,0)
.p-message
display: flex
justify-content: space-around
align-items: flex-start
padding: 8px 8px 8px 12px
border-radius: 4px
box-shadow: $box-shadow-bottom
min-width: 240px
max-width: 600px
min-height: 40px
.p-message + .p-message
margin-top: 24px
.p-message .p-message-hint
line-height: 24px
font-size: 0
.p-message .p-message-hint svg
vertical-align: middle
width: 16px
height: 16px
.p-message .p-message-text
padding-left: 8px
padding-right: 8px
width: 100%
text-align: left
font-size: 14px
color: $white
word-wrap: break-word
line-height: 24px
.p-message .p-message-close
height: 24px
line-height: 24px
pointer-events: auto
font-size: 0
.p-message .p-message-close svg
vertical-align: middle
width: 12px
opacity: .5
transition: opacity .3s
cursor: pointer
.p-message .p-message-close svg:hover
opacity: 1
.p-message-info
background-color: $blue-500
.p-message-success
background-color: $turquoise-500
.p-message-warning
background-color: $orange-400
.p-message-error
background-color: $red-400
.p-file-upload
font-size: 0
width: 400px
overflow: hidden
display: inline-block
.p-file-upload .p-add-file-input
position: absolute
left: 0
top: 0
width: 100%
height: 100%
opacity: 0
cursor: pointer
.p-file-upload .p-file-upload-base
position: relative
width: 130px
height: 32px
background-color: $theme
border: 1px solid $grey-400
padding: 0 8px
border-radius: 4px
transition: all .36s
cursor: pointer
.p-file-upload .p-file-upload-base .p-label
display: inline-flex
justify-content: center
align-items: center
width: 100%
height: 100%
cursor: pointer
.p-file-upload .p-file-upload-base .p-label .p-name
margin-right: 8px
font-size: 14px
font-weight: 400
color: $grey-900
line-height: 22px
.p-file-upload .p-file-upload-base .p-label .p-tips
font-size: 14px
font-weight: 400
color: $grey-500
line-height: 22px
.p-file-upload .p-file-upload-base:hover
border: 1px solid $blue-500
color: $blue-500
.p-file-upload .p-file-upload-base:hover .p-name
color: $blue-500
.p-file-upload .p-file-upload-base:hover .p-tips
color: $blue-500
.p-file-upload .p-file-upload-base:hover svg g path
fill: $blue-500
.p-file-upload .p-file-upload-base-disabled
color: $grey-400
font-weight: 400
background: $grey-200
border: none
.p-file-upload .p-file-upload-base-disabled .p-label
cursor: not-allowed
.p-file-upload .p-file-upload-base-disabled .p-label .p-name
color: $grey-400
.p-file-upload .p-file-upload-base-disabled .p-label .p-tips
color: $grey-400
.p-file-upload .p-file-upload-base-disabled .p-add-file-input
cursor: default
.p-file-upload .p-file-upload-base-disabled svg g path
fill: $grey-400
.p-file-upload .p-file-upload-base-disabled:hover
border: none
color: $grey-400
cursor: default
.p-file-upload .p-file-upload-base-disabled:hover .p-name
color: $grey-400
.p-file-upload .p-file-upload-base-disabled:hover .p-tips
color: $grey-400
.p-file-upload .p-file-upload-base-disabled:hover svg g path
fill: $grey-400
.p-file-upload .p-file-upload-drop
position: relative
width: 400px
height: 200px
background-color: $grey-50
border-radius: 4px
border: 1px dashed $grey-400
display: flex
flex-direction: column
justify-content: center
align-items: center
cursor: pointer
transition: all .36s
.p-file-upload .p-file-upload-drop .p-name
font-size: 16px
font-weight: 400
color: $grey-900
line-height: 24px
margin-bottom: 4px
margin-top: 16px
.p-file-upload .p-file-upload-drop .p-tips
font-size: 14px
font-weight: 400
color: $grey-500
line-height: 22px
.p-file-upload .p-file-upload-drop .p-tips-accept
width: 90%
overflow: hidden
white-space: nowrap
text-overflow: ellipsis
.p-file-upload .p-file-upload-drop:hover
border-color: $blue-500 !important
.p-file-upload .p-file-upload-drop-disabled
cursor: default
.p-file-upload .p-file-upload-drop-disabled .p-add-file-input
cursor: default
.p-file-upload .p-file-upload-drop-disabled .p-name
color: $grey-400
.p-file-upload .p-file-upload-drop-disabled .p-tips
color: $grey-400
.p-file-upload .p-file-upload-drop-disabled:hover
border-color: $grey-400 !important
.p-file-upload .p-file-upload-drop-disabled svg g path
fill: $grey-400
.p-file-upload .p-file-upload-drop-disabled svg g rect
fill: $grey-400
.p-file-upload .p-file-upload-mobile
position: relative
width: 400px
height: 48px
background-color: $grey-50
border-radius: 4px
border: 1px dashed $grey-400
display: flex
flex-direction: column
justify-content: center
align-items: center
cursor: pointer
transition: all .36s
.p-file-upload .p-file-upload-mobile >svg >path
fill: $grey-400
.p-file-upload .p-file-upload-mobile:hover
border-color: $blue-500 !important
.p-file-upload .p-file-upload-mobile-disabled
cursor: default
background: #eff0f1
.p-file-upload .p-file-upload-mobile-disabled .p-add-file-input
cursor: default
.p-file-upload .p-file-upload-mobile-disabled:hover
border-color: $grey-400 !important
.p-file-upload .p-upload-list
width: 400px
height: 48px
background: $grey-50
border-radius: 4px
border: 1px solid $grey-300
margin-top: 16px
display: flex
justify-content: space-between
align-items: center
padding: 10px 16px
.p-file-upload .p-upload-list .loading
position: relative
display: block
width: 16px
height: 16px
top: 0
left: 0
z-index: 7000
.p-file-upload .p-upload-list .loading >i
position: absolute
top: 0
left: 0
right: 0
bottom: 0
width: 16px
height: 16px
border: 1px solid $blue-500
border-right-color: transparent
border-radius: 50%
animation: loadingAnimation .8s infinite Linear
margin: auto
.p-file-upload .p-upload-list .p-upload-list-item
width: calc(100% - 40px)
.p-file-upload .p-upload-list .p-upload-list-item .p-file-info
padding-left: 8px
padding-right: 16px
display: flex
justify-content: space-between
line-height: 22px
.p-file-upload .p-upload-list .p-upload-list-item .p-file-info .p-file-name
font-size: 14px
font-weight: 400
color: $grey-900
line-height: 20px
width: 50%
word-break: keep-all
overflow: hidden
white-space: nowrap
text-overflow: ellipsis
.p-file-upload .p-upload-list .p-upload-list-item .p-file-info .p-err-tips
font-size: 14px
font-weight: 400
line-height: 20px
color: $red-600
padding-right: 16px
padding-left: 20px
text-align: right
.p-file-upload .p-upload-list .p-upload-list-item .p-file-info .p-file-handle-button
font-size: 14px
line-height: 20px
width: 28px
float: right
color: $blue-500
cursor: pointer
.p-file-upload .p-upload-list .p-upload-list-item .p-progress-bar
margin-left: 9px
height: 2px
background: $grey-300
border-radius: 1px
margin-top: 4px
.p-file-upload .p-upload-list .p-upload-list-item .p-progress-bar .p-progress-rate
width: 0
height: 2px
background: $blue-500
border-radius: 1px
transition: width 2s
.p-file-upload .p-upload-list .p-upload-delete-icon
cursor: pointer
width: 16px
height: 16px
.p-file-upload .p-upload-list .p-upload-delete-icon path
transition: fill .36s
.p-file-upload .p-upload-list .p-upload-delete-icon:hover path
fill: $blue-500
@keyframes loadingAnimation
from
transform: rotate(0)
to
transform: rotate(360deg)
@keyframes loadingAnimation
from
transform: rotate(0)
to
transform: rotate(360deg)
@keyframes loadingAnimation
from
transform: rotate(0)
to
transform: rotate(360deg)
@keyframes loadingAnimation
from
transform: rotate(0)
to
transform: rotate(360deg)