@nutui/nutui-react
Version:
京东风格的轻量级移动端 React 组件库,支持一套代码生成 H5 和小程序
173 lines (171 loc) • 6.26 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-rate {
display: flex;
touch-action: pan-x;
}
.nut-rate.disabled .nut-rate-item-icon {
cursor: not-allowed;
}
.nut-rate.readonly .nut-rate-item-icon {
cursor: default;
}
.nut-rate-item {
display: flex;
align-items: center;
flex-shrink: 0;
position: relative;
}
.nut-rate-item-half {
position: absolute;
height: 100%;
width: 50% ;
left: 0;
top: 0;
overflow: hidden;
}
.nut-rate-item-half .nut-icon {
flex-shrink: 0;
}
.nut-rate-item-normal {
margin-left: var(--nutui-rate-item-margin, calc(4px * var(--nut-scale-f, 1)));
}
.nut-rate-item-normal .nut-icon {
height: var(--nutui-rate-icon-size, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1))));
width: var(--nutui-rate-icon-size, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1))));
}
.nut-rate-item-large {
margin-left: calc(var(--nutui-rate-item-margin, calc(4px * var(--nut-scale-f, 1))) * 2);
}
.nut-rate-item-large .nut-icon {
height: calc(var(--nutui-rate-icon-size, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1)))) + 8px * var(--nut-scale-f, 1));
width: calc(var(--nutui-rate-icon-size, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1)))) + 8px * var(--nut-scale-f, 1));
}
.nut-rate-item-small {
margin-left: calc(var(--nutui-rate-item-margin, calc(4px * var(--nut-scale-f, 1))) / 2);
}
.nut-rate-item-small .nut-icon {
height: calc(var(--nutui-rate-icon-size, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1)))) - 4px * var(--nut-scale-f, 1));
width: calc(var(--nutui-rate-icon-size, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1)))) - 4px * var(--nut-scale-f, 1));
}
.nut-rate-item-normal:first-child, .nut-rate-item-large:first-child, .nut-rate-item-small:first-child {
margin-left: 0;
}
.nut-rate-item-icon {
display: flex;
align-items: center;
cursor: pointer;
}
.nut-rate-item-icon .nut-icon {
color: var(--nutui-rate-icon-color, var(--nutui-color-primary-icon, #ff3333));
}
.nut-rate-item-icon-disabled .nut-icon {
color: var(--nutui-rate-icon-inactive-color, var(--nutui-color-primary-icon-disabled, #dadce0));
}
.nut-rate-item-icon.nut-rate-item-icon.nut-rate-item-icon-half {
position: absolute;
left: 0;
top: 0;
overflow: hidden;
}
.nut-rate-item-icon.nut-rate-item-icon::before {
position: relative;
top: auto;
left: auto;
transform: none;
}
.nut-rate-score {
/* #ifdef dynamic*/
display: flex;
/* #endif */
/* #ifndef dynamic*/
display: inline-flex;
/* #endif */
align-items: center;
color: var(--nutui-rate-font-color, var(--nutui-color-primary-icon, #ff3333));
font-family: "JDZH-Regular";
}
.nut-rate-score-normal {
padding-left: var(--nutui-rate-item-margin, calc(4px * var(--nut-scale-f, 1)));
font-size: var(--nutui-rate-font-size, var(--nutui-font-size-s, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
line-height: var(--nutui-line-height-s, var(--nutui-font-size-s, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
}
.nut-rate-score-large {
font-size: var(--nutui-rate-font-size-large, calc(var(--nutui-rate-font-size, var(--nutui-font-size-s, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1))))) + 6px * var(--nut-scale-font, var(--nut-scale-f, 1))));
line-height: var(--nutui-line-height-xl, var(--nutui-font-size-xl, calc(18px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
padding-left: calc(var(--nutui-rate-item-margin, calc(4px * var(--nut-scale-f, 1))) * 2);
}
.nut-rate-score-small {
font-size: var(--nutui-rate-font-size-small, calc(var(--nutui-rate-font-size, var(--nutui-font-size-s, calc(12px * var(--nut-scale-font, var(--nut-scale-f, 1))))) - 2px * var(--nut-scale-font, var(--nut-scale-f, 1))));
line-height: var(--nutui-line-height-xxs, var(--nutui-font-size-xxs, calc(10px * var(--nut-scale-font, var(--nut-scale-f, 1)))));
padding-left: calc(var(--nutui-rate-item-margin, calc(4px * var(--nut-scale-f, 1))) / 2);
}
.nut-rate-score-disabled {
color: var(--nutui-rate-icon-inactive-color, var(--nutui-color-primary-icon-disabled, #dadce0));
}
[dir=rtl] .nut-rate-item,
.nut-rtl .nut-rate-item {
margin-left: 0;
}
[dir=rtl] .nut-rate-item:first-child,
.nut-rtl .nut-rate-item:first-child {
margin-right: 0;
}
[dir=rtl] .nut-rate-item-normal,
.nut-rtl .nut-rate-item-normal {
margin-right: var(--nutui-rate-item-margin, calc(4px * var(--nut-scale-f, 1)));
}
[dir=rtl] .nut-rate-item-large,
.nut-rtl .nut-rate-item-large {
margin-right: calc(var(--nutui-rate-item-margin, calc(4px * var(--nut-scale-f, 1))) * 2);
}
[dir=rtl] .nut-rate-item-small,
.nut-rtl .nut-rate-item-small {
margin-right: calc(var(--nutui-rate-item-margin, calc(4px * var(--nut-scale-f, 1))) - 2px * var(--nut-scale-f, 1));
}
[dir=rtl] .nut-rate-item:last-child,
.nut-rtl .nut-rate-item:last-child {
margin-left: 0;
}
[dir=rtl] .nut-rate-item-half,
.nut-rtl .nut-rate-item-half {
left: auto;
right: 0;
}
[dir=rtl] .nut-rate-item-icon.nut-rate-item-icon.nut-rate-item-icon-half,
.nut-rtl .nut-rate-item-icon.nut-rate-item-icon.nut-rate-item-icon-half {
left: auto;
right: 0;
}
[dir=rtl] .nut-rate-item-icon.nut-rate-item-icon::before,
.nut-rtl .nut-rate-item-icon.nut-rate-item-icon::before {
left: auto;
right: auto;
}
[dir=rtl] .nut-rate-score,
.nut-rtl .nut-rate-score {
padding-left: 0;
}
[dir=rtl] .nut-rate-score-large,
.nut-rtl .nut-rate-score-large {
padding-right: calc(var(--nutui-rate-item-margin, calc(4px * var(--nut-scale-f, 1))) * 2);
}
[dir=rtl] .nut-rate-score-normal,
.nut-rtl .nut-rate-score-normal {
padding-right: var(--nutui-rate-item-margin, calc(4px * var(--nut-scale-f, 1)));
}
[dir=rtl] .nut-rate-score-small,
.nut-rtl .nut-rate-score-small {
padding-right: calc(var(--nutui-rate-item-margin, calc(4px * var(--nut-scale-f, 1))) - 2px * var(--nut-scale-f, 1));
}