Javascript 文本输入在使用jquery(.css方法)更改颜色后更改样式

Javascript 文本输入在使用jquery(.css方法)更改颜色后更改样式,javascript,jquery,css,Javascript,Jquery,Css,我正在尝试使用更改文本输入字段的背景色 $('input[name=testname]').css({“背景色”:“#ffffff”}) 但是在那之后,文本框的样式就改变了(右边的就是改变了的那个) 这似乎只发生在Firefox中,有解决办法吗 编辑: 第一个textinput的样式与第二个不同。(这里不是Chrome,只是Firefox25.0.1)就是它在这里的样子 编辑2:我更正了颜色,如果新颜色与旧颜色相同,甚至会发生这种情况。这是一种非常奇怪的行为。我真的找不到这个问题的根源。。。我可

我正在尝试使用更改文本输入字段的背景色

$('input[name=testname]').css({“背景色”:“#ffffff”})

但是在那之后,文本框的样式就改变了(右边的就是改变了的那个)

这似乎只发生在Firefox中,有解决办法吗

编辑:

第一个textinput的样式与第二个不同。(这里不是Chrome,只是Firefox25.0.1)就是它在这里的样子


编辑2:我更正了颜色,如果新颜色与旧颜色相同,甚至会发生这种情况。

这是一种非常奇怪的行为。我真的找不到这个问题的根源。。。我可以找到默认输入字段的源代码(它在其中更改),但找不到它正常外观的css源代码。

解决方案1 但是,我可以强制输入字段与默认输入字段类似:

.changeBg
{
    background-color: white;

    border-radius: .18em;
    border-width: 1px;
    border-style: solid;
    border-top-color: #abadb3;
    border-left-color: #e2e3ea;
    border-bottom-color: #e3e9ef;
    border-right-color: #dbdfe6;

    padding: 2.23px;
}

.changeBg:hover
{
    border-top-color: #3d7bad;
    border-bottom-color: #b7d9ed;
    border-right-color: #a4c9e3;
    border-left-color: #b5cfe7;
}
我刚刚使用了一个类,它改变了css背景:

$('input[name=test]').addClass('changeBg');
请注意,这只是Firefox的一个回退

更新

您可能希望使用
@-moz document url-prefix(){}
仅针对firefox进行此回退

这似乎也发生在chrome上,只是简单的css


解决方案2 因为这不仅发生在firefox上,而且每个浏览器都有自己的标记,所以您还可以为每个浏览器创建一个输入标记


这样,您就不必为每个浏览器指定任何标记。

默认情况下:所有表单元素都由用户代理(浏览器)样式表设置样式。如果您试图覆盖元素的样式,则用户代理将部分地(观察到)或完全地(可能)删除其样式表**


只需将边框样式添加到文本框的元素中即可保持不一致的外观。

此问题需要一个重现问题的演示。添加了一个为我重现问题的链接。这是因为文本框的默认边框,因为如果您更改输入框的边框类型,它们的样式设置为“插入”它将被修复…;)@VivekVikranth Yea输入文本的默认边框是inset
ThreeDFace
。但是,当您更改此样式时,它仍不会使用与其他样式相同的布局。我试图独立地改变边界,但它仍然不是“正常”的边界。它在左、右和下边框上使用渐变。此外,用户选择效果不再有效。@nkmol哈哈,是的,但现在它(示例)希望这能起作用:)通过css删除背景。嗯,看起来实现有点缺陷。(这意味着我认为(默认)样式在仅更改颜色后不应更改)。但这似乎是一个很好的解决办法,谢谢。