@nutui/nutui-react-taro
Version:
京东风格的轻量级移动端 React 组件库,支持一套代码生成 H5 和小程序
216 lines (207 loc) • 5.72 kB
CSS
:root,
page {
--nut-scale-f: 1;
--nut-scale-font: var(--nut-scale-f, 1);
--nut-scale-icon: var(--nut-scale-f, 1);
--nut-icon-height: calc(16px * var(--nut-scale-icon, var(--nut-scale-f, 1))) ;
--nut-icon-width: calc(16px * var(--nut-scale-icon, var(--nut-scale-f, 1))) ;
--nut-icon-line-height: calc(16px * var(--nut-scale-icon, var(--nut-scale-f, 1))) ;
}
.nut-overlay {
position: fixed;
top: 0;
left: 0;
bottom: 0;
right: 0;
width: 100%;
height: 100%;
background-color: var(--nutui-overlay-bg-color, var(--nutui-color-mask, rgba(0, 0, 0, 0.7)));
}
.nut-overflow-hidden {
overflow: hidden ;
}
@keyframes nut-fade-in {
0% {
opacity: 0;
}
1% {
opacity: 0;
}
100% {
opacity: 1;
}
}
@keyframes nut-fade-out {
0% {
opacity: 1;
}
1% {
opacity: 1;
}
100% {
opacity: 0;
}
}
.nut-overlay-slide-enter-active, .nut-overlay-slide-appear-active {
animation-fill-mode: both;
animation-name: nut-fade-in;
animation-duration: var(--nutui-overlay-animation-duration, 0.3s);
}
.nut-overlay-slide-exit-active {
animation-fill-mode: both;
animation-name: nut-fade-out;
animation-duration: var(--nutui-overlay-animation-duration, 0.3s);
}
[dir=rtl] .nut-overlay,
.nut-rtl .nut-overlay {
left: auto;
right: 0;
}
@keyframes rotation {
0% {
-webkit-transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
}
}
.nut-toast {
position: fixed;
left: 0;
top: 0;
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
width: 100%;
height: 100%;
pointer-events: none;
z-index: 1300;
}
.nut-toast-overlay-default {
--nutui-overlay-bg-color: rgba(0, 0, 0, 0);
}
.nut-toast-overlay-default-taro {
/* #ifdef harmony dynamic*/
background-color: rgba(0, 0, 0, 0);
/* #endif */
/* #ifndef harmony dynamic*/
--nutui-overlay-bg-color: rgba(0, 0, 0, 0);
/* #endif */
}
.nut-toast-inner {
position: absolute;
top: var(--nutui-toast-inner-top, 50%);
transform: translate(0, -50%);
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
min-width: var(--nutui-toast-inner-min-width, calc(88px * var(--nut-scale-f, 1)));
max-width: var(--nutui-toast-inner-max-width, calc(200px * var(--nut-scale-f, 1)));
box-sizing: border-box;
font-size: var(--nutui-toast-text-font-size, var(--nutui-font-size-base, calc(14px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
text-align: var(--nutui-toast-inner-text-align, center);
padding: var(--nutui-toast-inner-padding, calc(12px * var(--nut-scale-f, 1)) calc(16px * var(--nut-scale-f, 1)));
word-break: break-all;
background: var(--nutui-toast-inner-bg-color, var(--nutui-color-mask, rgba(0, 0, 0, 0.7)));
border-radius: var(--nutui-toast-inner-border-radius, var(--nutui-radius-xl, calc(12px * var(--nut-scale-f, 1))));
color: var(--nutui-toast-font-color, #ffffff);
}
.nut-toast-has-icon .nut-toast-inner {
min-width: var(--nutui-toast-inner-has-icon-min-width, calc(97px * var(--nut-scale-f, 1)));
max-width: var(--nutui-toast-inner-has-icon-max-width, calc(225px * var(--nut-scale-f, 1)));
}
.nut-toast-inner-normal {
word-break: normal;
word-wrap: normal;
}
.nut-toast-inner-break-word {
word-break: normal;
word-wrap: break-word;
}
.nut-toast-inner-small {
font-size: var(--nutui-font-size-s, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1))));
}
.nut-toast-inner-large {
font-size: var(--nutui-font-size-l, calc(15px * var(--nut-scale-font, var(--nut-scale-f, 1))));
}
.nut-toast-center {
top: var(--nutui-toast-inner-top, 48%);
}
.nut-toast-bottom {
top: var(--nutui-toast-inner-top, 80%);
}
.nut-toast-top {
top: var(--nutui-toast-inner-top, 20%);
}
.nut-toast-text {
color: var(--nutui-toast-font-color, var(--nutui-white, #ffffff));
text-align: var(--nutui-toast-inner-text-align, center);
font-weight: var(--nutui-toast-text-font-weight, 400);
/* #ifdef harmony dynamic*/
line-height: normal;
/* #endif */
/* #ifndef harmony dynamic*/
line-height: calc(20px * var(--nut-scale-f, 1));
/* #endif */
height: auto;
}
.nut-toast-title {
color: var(--nutui-toast-font-color, var(--nutui-white, #ffffff));
font-size: var(--nutui-toast-title-font-size, var(--nutui-font-size-md, calc(16px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
font-weight: var(--nutui-toast-title-font-weight, 600);
text-align: var(--nutui-toast-inner-text-align, center);
/* #ifdef harmony dynamic*/
line-height: normal;
/* #endif */
/* #ifndef harmony dynamic*/
line-height: calc(22px * var(--nut-scale-f, 1));
/* #endif */
}
.nut-toast .nut-icon {
width: calc(20px * var(--nut-scale-f, 1));
height: calc(20px * var(--nut-scale-f, 1));
color: var(--nutui-toast-icon-color, var(--nutui-toast-font-color, var(--nutui-white, #ffffff)));
}
.nut-toast-icon-wrapper {
width: 100%;
display: flex;
align-items: center;
justify-content: center;
margin: 0;
padding: calc(10px * var(--nut-scale-f, 1)) 0;
color: var(--nutui-toast-icon-color, var(--nutui-toast-font-color, var(--nutui-white, #ffffff)));
}
.nut-toast-icon-wrapper-icon {
width: calc(20px * var(--nut-scale-f, 1));
height: calc(20px * var(--nut-scale-f, 1));
}
.nut-toast-rtl {
left: auto;
right: 0;
}
.nut-toast-rtl-inner {
left: auto;
right: 50%;
}
[dir=rtl] .nut-toast,
.nut-rtl .nut-toast {
left: auto;
right: 0;
}
[dir=rtl] .nut-toast-inner,
.nut-rtl .nut-toast-inner {
left: auto;
right: 50%;
}
.toast-fade-enter-active {
transition: opacity 0.3s;
}
.toast-fade-leave-active {
transition: opacity 0.3s;
}
.toast-fade-enter-from,
.toast-fade-leave-to {
opacity: 0;
}