amis/scss/components/form/_picker.scss
吴多益 33686a375e
SCSS 基于 CSS custom properties 重构,支持通过配置来控制展现风格 (#1190)
* 使用自定义 css 属性初步,支持大部分组件的展现

* button 大部分可以看了

* cxd 和 dark 大部分正常

* 修复一些细节样式错误;补充 css 变量的文档

* 修复几个脚本发现的错误

* 完善一下注释

* 修复一些样式不一致问题

* 修复可能存在的 css xss

* 恢复 font-variant 功能

* 修复绝大部分 @if 相关的问题

* 恢复之前的注释

* 修复小错误,并将所有 background-color 改成 background,这样就能设置渐变色

* 修复 button group 在 cxd 下不一致问题

* 缩小查看配置和复制配置的宽度,留出更多空间

* 修复一些潜在的错误

* 恢复 utilities 中 label 背景色的设置

* 修复错误的 css 变量

* 补充 IE11 Variables Polyfill
2020-12-21 10:08:40 +08:00

103 lines
2.1 KiB
SCSS

.#{$ns}Picker {
@include input-text();
outline: none;
&.is-focus > &-input {
border-color: var(--Form-input-onFocused-borderColor);
box-shadow: var(--Form-input-boxShadow);
background: var(--Form-input-onFocused-bg);
}
&-placeholder {
color: var(--Form-input-placeholderColor);
user-select: none;
position: absolute;
// margin-top: 2 * var(--Form-input-borderWidth);
line-height: var(--Form-input-lineHeight);
}
&-input {
min-height: var(--Form-input-height);
height: auto;
}
.#{$ns}Picker-values {
display: inline;
}
&-valueWrap {
flex-grow: 1;
position: relative;
> input {
width: 1rem;
display: inline-block;
}
}
.#{$ns}Picker-valueWrap {
margin-bottom: calc(var(--gap-xs) * -1);
line-height: 1;
}
.#{$ns}Picker-value {
cursor: pointer;
user-select: none;
white-space: nowrap;
vertical-align: middle;
line-height: calc(
var(--Form-input-lineHeight) * var(--Form-input-fontSize) - #{px2rem(2px)}
);
display: inline-block;
font-size: var(--Form-selectValue-fontSize);
color: var(--Form-selectValue-color);
background: var(--Form-selectValue-bg);
border: px2rem(1px) solid var(--Form-selectValue-borderColor);
border-radius: 2px;
margin-right: var(--gap-xs);
margin-bottom: var(--gap-xs);
&.is-disabled {
pointer-events: none;
opacity: var(--Button-onDisabled-opacity);
}
}
.#{$ns}Picker-valueIcon {
cursor: pointer;
border-right: px2rem(1px) solid var(--Form-selectValue-borderColor);
padding: 1px 5px;
&:hover {
background: var(--Form-selectValue-onHover-bg);
}
}
.#{$ns}Picker-valueLabel {
padding: 0 var(--gap-xs);
}
&-btn {
cursor: pointer;
color: var(--Picker-iconColor);
&:hover {
color: var(--Picker-onHover-iconColor);
}
}
&-clear {
display: inline-block;
@include input-clear();
line-height: 1;
margin-right: var(--gap-xs);
}
}
.#{$ns}PickerControl.is-inline {
.#{$ns}Picker {
display: inline-block;
min-width: px2rem(150px);
}
}