Css 设置自动填充后禁用的输入背景色

Css 设置自动填充后禁用的输入背景色,css,Css,我正在创建一个表单,一旦提交,我想删除输入的背景颜色 如果对输入使用Google Autofill,则会忽略背景色和颜色属性 在开发工具中,它显示我的样式应该是可见的,但它们不是 input:disabled, textarea:disabled, .disabled { background: #060301; color: #f0eef3; } /* Annoyingly we have to override Chrome styles */ input:-webkit-auto

我正在创建一个表单,一旦提交,我想删除输入的背景颜色

如果对输入使用Google Autofill,则会忽略背景色和颜色属性

在开发工具中,它显示我的样式应该是可见的,但它们不是

input:disabled, textarea:disabled, .disabled {
  background: #060301;
  color: #f0eef3;
}

/* Annoyingly we have to override Chrome styles */
input:-webkit-autofill:disabled, 
textarea:-webkit-autofill:disabled,
input:-internal-autofill-selected {
  background: #060301!important;
  color: #f0eef3!important;
}
除非使用自动填充,否则它工作正常


有什么想法吗?

type=“text”的所有禁用输入元素设置背景色:
您可以在html中添加
disabled
属性并添加背景

input[type=text]:已启用{
背景#ffff00;
}
输入[类型=文本]:已禁用{
背景:#dddddd;
}

名字:
姓氏:
国家:
您可以在禁用输入字段之前重新设置输入字段的值。这将重置Chrome的自动填充状态

inputField.value=inputField.value
inputField.disabled=true

只有CSS才能达到预期效果(至少在视觉上)的唯一方法是使用一个大的插入框阴影对背景进行着色,而不是设置背景颜色。后者被用户代理样式表锁定。

不幸的是,这并不能解决问题。我开始认为这是一个铬风格的缺陷。我在设置背景方面没有问题,只有在使用谷歌Chrome的“自动填充”功能填充输入时才有问题——之后似乎无法设置背景。