AntDV中a-input的默认样式修改
UI稿有修改a-input样式的需求,调整代码如下:
基本外观样式(背景颜色,字体颜色,placeholder颜色):
/deep/ .ant-input{
background-color: rgba(0,0,0,.3);
color: #4091FF;
border: 1px solid rgba(0,0,0,.3);
&::placeholder {
color: #4091FF;
}
}
谷歌浏览器的自动填充会覆盖掉写好的样式,用延时动画保证我们的颜色:
/deep/ input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
-webkit-transition-delay: 99999s;
-webkit-transition: color 99999s ease-out, background-color 99999s ease-out;
}
由于我的a-input是登录页使用的,存在表单验证,输入错误时表单验证也会覆盖掉设置的样式:
/deep/ .has-error .ant-input-affix-wrapper .ant-input, .has-error .ant-input-affix-wrapper .ant-input:hover{
background-color: rgba(0,0,0,.3) !important;
color: #4091FF !important;
}
由于我自定了一个输入框的前置图标,输入文本和图标有点挤,所以加了点距离
/deep/ .ant-input-affix-wrapper .ant-input:not(:first-child) {
padding-left: 40px;
}