我如何能目标输入字段类型的“文本”使用CSS选择器?


当前回答

你可以在这里使用属性选择器:

input[type="text"] {
    font-family: Arial, sans-serif;
}

这在IE7及以上版本中得到支持。如果你需要支持IE6,你可以使用IE7.js来增加对它的支持。

更多信息请参见:http://reference.sitepoint.com/css/attributeselector

其他回答

输入[type =“text”]

这将选择网页中所有的输入类型文本。

使用属性选择器,我们的目标是CSS中的输入类型文本

input[type=text] {
background:gold;
font-size:15px;
 }

我想在表格行中设置文本输入字段的样式。我用下面的代码做到了:

.admin_table input[type=text]:focus {
    background-color: #FEE5AC;
}

正如@Aamir提到的,现在最好的方法——跨浏览器,抛弃IE6——是这样的:

[type=text] {}

还没有人提到CSS的低特异性(为什么这很重要?)[type=text]的输入为0,0,1,0,而不是0,0,1,1。

就性能而言,再也没有负面影响了。

Normalize v4.0.0刚刚发布,降低了选择器的特异性。

在jQuery中,你可以使用:text选择器来选择所有文本类型的输入。看这里工作的小提琴。

$(document).ready(function () {
    $(":text").css({  // or $("input:text")
        'background': 'green',
        'color':'#fff'
    });
});

:text是一个jQuery扩展,不是CSS规范的一部分。使用:text的查询不能利用原生DOM querySelectorAll()方法提供的性能提升。为了在现代浏览器中获得更好的性能,请使用[type="text"]。这将适用于IE6+。

$("[type=text]").css({  // or $("input[type=text]")
    'background': 'green',
    'color':'#fff'
});

对于常规CSS,使用以下方法:

[type=text] { /* or input[type=text] */
    background: green;
}