1.网上说的通过设置内阴影的方法要慎用,如果input背景是黑色,则会造成文字显示异常。
2.下面这种方法经测试,在各个浏览器表现良好,原理是通过transition颜色变换,此方法会引起光标颜色异常。可以使用caret-color是新出的属性来设置光标颜色,如果要兼容ie678,注意兼容性。
先在input对应的css中设置:
-webkit-text-fill-color: #ffffff;
caret-color: #fff; / 光标颜色 /
然后添加伪类:
input:focus { outline: none; }
input:-webkit-autofill {
-webkit-text-fill-color: #ffffff;
transition: background-color 5000s ease-in-out 0s;
}