element-plus/packages/theme-chalk/src/cascader-panel.scss

130 lines
2.3 KiB
SCSS

@use 'mixins/mixins' as *;
@use 'mixins/var' as *;
@use 'common/var' as *;
@include b(cascader-panel) {
@include set-component-css-var('cascader', $cascader);
}
@include b(cascader-panel) {
display: flex;
border-radius: var(--el-cascader-menu-radius);
font-size: var(--el-cascader-menu-font-size);
@include when(bordered) {
border: var(--el-cascader-menu-border);
border-radius: var(--el-cascader-menu-radius);
}
}
@include b(cascader-menu) {
min-width: 180px;
box-sizing: border-box;
color: var(--el-cascader-menu-text-color);
border-right: var(--el-cascader-menu-border);
&:last-child {
border-right: none;
.#{$namespace}-cascader-node {
padding-right: 20px;
}
}
@include e(wrap) {
// Raise the priority
&.el-scrollbar__wrap {
height: 204px;
}
}
@include e(list) {
position: relative;
min-height: 100%;
margin: 0;
padding: 6px 0;
list-style: none;
box-sizing: border-box;
}
@include e(hover-zone) {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
}
@include e(empty-text) {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
text-align: center;
color: var(--el-cascader-color-empty);
}
}
@include b(cascader-node) {
position: relative;
display: flex;
align-items: center;
padding: 0 30px 0 20px;
height: 34px;
line-height: 34px;
outline: none;
&.is-selectable.in-active-path {
color: var(--el-cascader-menu-text-color);
}
&.in-active-path,
&.is-selectable.in-checked-path,
&.is-active {
color: var(--el-cascader-menu-selected-text-color);
font-weight: bold;
}
&:not(.is-disabled) {
cursor: pointer;
&:hover,
&:focus {
background: var(--el-cascader-node-background-hover);
}
}
@include when(disabled) {
color: var(--el-cascader-node-color-disabled);
cursor: not-allowed;
}
@include e(prefix) {
position: absolute;
left: 10px;
}
@include e(postfix) {
position: absolute;
right: 10px;
}
@include e(label) {
flex: 1;
text-align: left;
padding: 0 8px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
> .#{$namespace}-radio {
margin-right: 0;
.#{$namespace}-radio__label {
padding-left: 0;
}
}
}