Javascript 防止边和铬在autoform上更改颜色

Javascript 防止边和铬在autoform上更改颜色,javascript,jquery,css,colors,background-color,Javascript,Jquery,Css,Colors,Background Color,我在我的网页上创建了一个嵌入式支付解决方案。一旦我付款并输入我的姓名、地址等,Edge和Chrome(可能还有其他人)建议为我保存信息。没问题。 当我进行新的支付时,浏览器会提示一些保存的表单数据。我也很好。但是,当我单击保存的信息时,为我填写的元素(名称、地址)的颜色会发生变化。在使用表单数据之前,背景是透明的,而文本是#D8D8D8,在使用表单数据之后,背景颜色变为#E5F1FB,文本颜色几乎为黑色。 我希望背景变得透明(或保持透明) 如何防止浏览器在使用保存的表单数据时更改颜色?不知道这是

我在我的网页上创建了一个嵌入式支付解决方案。一旦我付款并输入我的姓名、地址等,Edge和Chrome(可能还有其他人)建议为我保存信息。没问题。 当我进行新的支付时,浏览器会提示一些保存的表单数据。我也很好。但是,当我单击保存的信息时,为我填写的元素(名称、地址)的颜色会发生变化。在使用表单数据之前,背景是透明的,而文本是#D8D8D8,在使用表单数据之后,背景颜色变为#E5F1FB,文本颜色几乎为黑色。 我希望背景变得透明(或保持透明)

如何防止浏览器在使用保存的表单数据时更改颜色?不知道这是否可能,如果可能的话,这是否应该通过Javascript(jQuery)或CSS或其他方式实现

到目前为止,我尝试使用CSS:

.subscription_payment:-webkit-autofill,  
.subscription_payment:-webkit-autofill:hover,  
.subscription_payment:-webkit-autofill:focus,  
.subscription_payment:-webkit-autofill:active  
 {  
 -webkit-transition: "color 9999s ease-out, background-color 9999s ease-out";  
 -webkit-transition-delay: 9999s;  
 transition: color 9999s ease-in-out, background-color 9999s ease-in-out;  
 transition-delay: 9999s;  
 -webkit-box-shadow: 0 0 0 30px red inset !important;  
 -webkit-text-fill-color: blue !important;  
 -webkit-background-fill-color: yellow !important;  
 -webkit-box-shadow: 0 0 0px 1000px white inset !important;  
}
我试了一下Edge和Chrome。文本颜色在Chrome中更改,而不是在Edge中更改。背景色不变


Albert

如果你说的是自动填充,我通常使用CSS的这个小片段来禁用背景颜色


.subscription_payment:-webkit-autofill,  
.subscription_payment:-webkit-autofill:hover,  
.subscription_payment:-webkit-autofill:focus,  
.subscription_payment:-webkit-autofill:active  
 {
   -webkit-transition: "color 9999s ease-out, background-color 9999s ease-out";
   -webkit-transition-delay: 9999s;
   transition: color 9999s ease-out, background-color 9999s ease-out;
   transition-delay: 9999s;
}

希望这对你有帮助。

答案很简单,我从未想过: 不要使用表单标记:)

AutoFORM只作用于表单HTML标记,但要将信息发送到后端,不需要表单。当我从HTML表单中删除要求输入“姓名”、“公司”、“地址1”、“地址2”、“邮政编码”、“城市”、“县”和“国家”的输入,以便表单中只包含信用卡信息时,问题就消失了:)


Albert

尝试在输入字段Hanks中的输入字段autocomplete=“off”上使用auto complete off。试过了,没用。用html格式试试also@Kairos你说的是“自动填充”吗?我猜,库普斯。哈哈。我试图找出它的英文名称,但谷歌不断返回丹麦网站。哈哈,Pawan Kumar,我也尝试过HTML格式,但没有work@Kairos嗯,奇怪。我不知道那是什么。你能分享一个截图或链接吗?图片:(在Chrome上测试,而不是在Edge上测试)。当前代码:{-webkit转换:“颜色9999s缓解,背景色9999s缓解”;-webkit转换延迟:9999s;转换:颜色9999s输入输出,背景色9999s输入输出;转换延迟:9999s;-webkit框阴影:0 0 30px红色插图!重要;-webkit文本填充颜色:蓝色!重要;-webkit背景填充颜色:黄色!重要;-webkit框阴影:0 0 px 1000px白色插图!重要}文本更改,bg不更改。@Kairos那么,您想防止背景变亮-您需要保持背景透明吗?你能用CSS修改你的问题吗?@Kairos好的,我想我明白你的意思。所以你应该删除你的代码,只使用我上面给你的代码。我已更新我的答案以包括您的选择器。:-)这会让你保持原来的风格。我试过了,库普斯,但没用。有无将“输入”更改为.subscription\u payment,有无我添加/更改的行。实际上非常简单:第一个元素。对于下一个元素,请避免使用“”标记。然后浏览器将不使用自动填充(并更改颜色)。