Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何更改Safari自动填充黄色背景色_Javascript_Html_Css_Safari - Fatal编程技术网

Javascript 如何更改Safari自动填充黄色背景色

Javascript 如何更改Safari自动填充黄色背景色,javascript,html,css,safari,Javascript,Html,Css,Safari,这张图片是我从safari得到的: 这是我的代码: 资料来源: -即使上面写的是chrome,但仍然指向webkit autofill 我试着使用背景色:白色!重要的覆盖锁定的css。调试工具显示用户代理样式表的背景颜色已被划掉,但颜色仍然没有改变,并且使用了自定义 这就是我真正困惑的地方,我不知道为什么不允许更改用户代理样式表。读到大多数浏览器都希望指示自动填充(Safari对此表示更加坚决) 我确实找到了另一种hack,您可以使用-webkit-box阴影来覆盖背景色。检查后,尝试使用

这张图片是我从safari得到的:

这是我的代码:

资料来源:

-即使上面写的是chrome,但仍然指向webkit autofill

我试着使用背景色:白色!重要的覆盖锁定的css。调试工具显示用户代理样式表的背景颜色已被划掉,但颜色仍然没有改变,并且使用了自定义


这就是我真正困惑的地方,我不知道为什么不允许更改用户代理样式表。

读到大多数浏览器都希望指示自动填充(Safari对此表示更加坚决)

我确实找到了另一种
hack
,您可以使用
-webkit-box阴影来覆盖背景色。检查后,尝试使用类来针对特定输入是不起作用的(即,特殊性)

在Safari(10.0.2)中,浏览器添加
阴影内容
作为用户代理,其中包括背景颜色和自动填充的值。这里的问题是,浏览器禁止编辑这些特定样式(例如
背景色
),因此下面给出了答案

input:-webkit-autofill, input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px white inset;
  -webkit-text-fill-color: #333;
}
如果输入中还有边框底部

input:-webkit-autofill, input:-webkit-autofill:focus {
  border-bottom: 1px solid #333;
}
来源:
-
-

-

我发现,这些解决方案包括
-webkit-box-shadow
背景色
仅在Google Chrome浏览器中有效,而在Safari中无效。对我有效的方法是添加
背景剪辑:内容框
。最后,代码(适用于所有浏览器)如下所示:

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active  {
    -webkit-box-shadow: 0 0 0 60px #fafafa inset !important;
    background-color: #fafafa !important;
    background-clip: content-box !important;
}

不要认为您可以覆盖用户代理样式,尤其是标有
的样式!重要信息
请尝试预先使用类来寻址
输入
,例如
input.class{背景色:红色!重要信息}
@DenisTsoi是否有任何理由预先寻址
输入
类?我相信特定性会有所帮助,但是使用-webit box shadow可以解决此问题:(,
opera
safari
不允许您更改自动填充。
firefox
ie
chrome
都可以。谢谢@Denis,这真的很有用。如果可以的话,我会关闭自动完成,这将节省我很多时间挖掘哈哈。