@nutui/nutui-react
Version:
京东风格的轻量级移动端 React 组件库,支持一套代码生成 H5 和小程序
143 lines (137 loc) • 5.02 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))) ;
}
/* #ifdef harmony */
/* #endif */
/* #ifndef harmony */
/* #endif */
.nut-indicator {
display: flex;
width: auto;
flex-direction: row;
flex-wrap: nowrap;
align-items: center;
}
.nut-indicator-fixed-width {
width: calc(21px * var(--nut-scale-f, 1));
}
.nut-indicator-dot, .nut-indicator-line {
display: inline-block;
vertical-align: middle;
width: var(--nutui-indicator-dot-size, calc(3px * var(--nut-scale-f, 1)));
height: var(--nutui-indicator-dot-size, calc(3px * var(--nut-scale-f, 1)));
border-radius: 50%;
background-color: var(--nutui-color-border-disabled, #c2c4cc);
margin-left: var(--nutui-indicator-dot-margin, var(--nutui-spacing-xxs, calc(4px * var(--nut-scale-f, 1))));
opacity: 0.4;
}
.nut-indicator-dot-0, .nut-indicator-line-0 {
margin-left: 0;
}
.nut-indicator-dot-active, .nut-indicator-line-active {
width: var(--nutui-indicator-dot-active-size, calc(6px * var(--nut-scale-f, 1)));
border-radius: var(--nutui-indicator-border-radius, var(--nutui-radius-xxs, calc(2px * var(--nut-scale-f, 1))));
background: var(--nutui-indicator-color, var(--nutui-color-primary, #ff0f23));
opacity: 1;
}
.nut-indicator-fixed-width .nut-indicator-dot {
width: calc(12px * var(--nut-scale-f, 1));
border-radius: var(--nutui-indicator-border-radius, var(--nutui-radius-xxs, calc(2px * var(--nut-scale-f, 1))));
}
.nut-indicator-fixed-width .nut-indicator-dot-active {
width: calc(6px * var(--nut-scale-f, 1));
}
.nut-indicator-vertical.nut-indicator-fixed-width {
justify-content: flex-start;
height: calc(21px * var(--nut-scale-f, 1));
width: auto;
}
.nut-indicator-vertical.nut-indicator-fixed-width .nut-indicator-dot {
width: calc(3px * var(--nut-scale-f, 1));
height: calc(12px * var(--nut-scale-f, 1));
border-radius: var(--nutui-indicator-border-radius, var(--nutui-radius-xxs, calc(2px * var(--nut-scale-f, 1))));
}
.nut-indicator-vertical.nut-indicator-fixed-width .nut-indicator-dot-active {
height: calc(6px * var(--nut-scale-f, 1));
}
.nut-indicator-vertical.nut-indicator-fixed-width.nut-indicator-fixed-width.nut-indicator-white .nut-indicator-dot-active {
height: calc(6px * var(--nut-scale-f, 1));
}
.nut-indicator-line {
width: var(--nutui-indicator-dot-active-size, calc(6px * var(--nut-scale-f, 1)));
margin: 0;
border-radius: var(--nutui-indicator-border-radius, var(--nutui-radius-xxs, calc(2px * var(--nut-scale-f, 1))));
background-color: transparent;
}
.nut-indicator-line-active {
transition: transform 0.3s ease-in-out;
background: var(--nutui-indicator-color, var(--nutui-color-primary, #ff0f23));
}
.nut-indicator-track {
position: relative;
}
.nut-indicator-track:after {
display: block;
content: " ";
position: absolute;
width: 100%;
height: 100%;
box-sizing: border-box;
border-radius: var(--nutui-indicator-border-radius, var(--nutui-radius-xxs, calc(2px * var(--nut-scale-f, 1))));
background-color: var(--nutui-color-border-disabled, #c2c4cc);
opacity: 0.4;
}
.nut-indicator-white .nut-indicator-dot, .nut-indicator-white .nut-indicator-line {
position: relative;
/* #ifndef dynamic*/
box-sizing: content-box;
/* #endif */
background: rgba(255, 255, 255, 0.4);
opacity: 1;
}
.nut-indicator-white .nut-indicator-line {
opacity: 0;
}
.nut-indicator-white .nut-indicator-line-active {
opacity: 1;
background: rgb(255, 255, 255);
}
.nut-indicator-white .nut-indicator-dot-active {
background: rgb(255, 255, 255);
}
.nut-indicator-track.nut-indicator-white:after {
border: calc(1px * var(--nut-scale-f, 1)) solid rgba(0, 0, 0, 0.06);
background: rgba(255, 255, 255, 0.4);
}
.nut-indicator-vertical {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.nut-indicator-vertical .nut-indicator-dot {
margin: 0;
margin-top: var(--nutui-indicator-dot-margin, var(--nutui-spacing-xxs, calc(4px * var(--nut-scale-f, 1))));
}
.nut-indicator-vertical .nut-indicator-dot-0 {
margin-top: 0;
}
.nut-indicator-vertical .nut-indicator-dot-active {
width: var(--nutui-indicator-dot-size, calc(3px * var(--nut-scale-f, 1)));
height: var(--nutui-indicator-dot-active-size, calc(6px * var(--nut-scale-f, 1)));
}
.nut-indicator-vertical.nut-indicator-track .nut-indicator-line {
width: var(--nutui-indicator-dot-size, calc(3px * var(--nut-scale-f, 1)));
height: var(--nutui-indicator-dot-active-size, calc(6px * var(--nut-scale-f, 1)));
}
[dir=rtl] .nut-indicator-dot-0,
.nut-rtl .nut-indicator-dot-0 {
margin-right: var(--nutui-indicator-dot-margin, var(--nutui-spacing-xxs, calc(4px * var(--nut-scale-f, 1))));
margin-left: 0;
}