cssselect器匹配没有属性x的元素
我正在处理一个CSS文件,并find需要样式文本input框,但是,我遇到了问题。 我需要一个简单的声明来匹配所有这些元素:
<input /> <input type='text' /> <input type='password' />
…但不匹配这些:
<input type='submit' /> <input type='button' /> <input type='image' /> <input type='file' /> <input type='checkbox' /> <input type='radio' /> <input type='reset' />
这是我想要做的:
input[!type], input[type='text'], input[type='password'] { /* styles here */ }
在上面的CSS中,注意第一个select器是input[!type]
。 我的意思是我想select所有没有指定type属性的input框(因为它默认为文本,但是input[type='text']
不匹配它)。 不幸的是,我能find的CSS3规范中没有这样的select器。
有谁知道一个办法来完成这个?
:不select
input:not([type]), input[type='text'], input[type='password'] { /* style here */ }
支持:在Internet Explorer 9和更高版本中
对于更多的跨浏览器的解决scheme,你可以按照你想要的方式input所有input的非input,文本和密码,然后另一个样式覆盖无线电,checkbox等的样式。
input { border:solid 1px red; } input[type=radio], input[type=checkbox], input[type=submit], input[type=reset], input[type=file] { border:none; }
– 要么 –
可以生成非typesinput的代码的任何部分给他们一个像.no-type
或完全不输出? 另外这种types的select可以用jQuery来完成。
只是想补充一点,你可以在oldIE中使用selectivizr:notselector: http ://selectivizr.com/