我有一个使用Visual Studio 2015构建的MVC Web应用程序。
我的某些表单会对输入元素使用自动填充,但在使用Chrome时,由于Chrome用户代理样式表,自动填充的字段会留下令人反感的淡黄色背景。广泛接受的解决方案是使用以下CSS来呈现没有黄色背景的输入:
input:-webkit-autofill {
-webkit-box-shadow: 0 0 0 1000px white inset !important;
}
这种方法在我之前的所有项目(使用Visual Studio 2013构建)中都运行良好。
但是,在我的CSS文件中,上面的代码显示为无效,并出现以下错误:
验证(CSS 3.0):": - webkit-autofill"不是一个有效的伪类。
我以前的项目使用CSS3,他们正在识别伪类并按预期应用样式。我在这里搜索了Q& A,并搜索了错误,但我找不到解决此问题的任何内容。
请有人了解a)可能导致此错误的原因,以及b)任何可能的解决方案。
为了进一步澄清,我在Site.css文件的最底部应用了样式,并且没有可以覆盖预期行为的内联样式。开发人员工具确认未应用样式,这表明错误确实是阻止样式应用的错误。
由于我以前的VS2013项目认可伪类,我假设VS2015中的某些设置可能是原因,但我找不到任何确认的。
任何建议都将受到赞赏。
非常感谢
答案 0 :(得分:2)
由于:-webkit-autofill
是一个Non-standard css伪元素,因此Visual Studio 2015会因为默认配置而导致该错误,以纠正.css
错误。
您可以执行的操作是禁用它,进入:Tools > Options > Text Editor > CSS > Advanced
然后切换,在右侧窗格中取消选中“验证”。这些名字可能略有不同,因为我正在翻译我的母语。
希望它有所帮助!