如何选择带有数字的css id?

时间:2015-07-22 22:49:13

标签: css css3

所以我想使用css选择器中的正则表达式来定位多个html元素,如下所示:

<input id="something_stuff_013_work" />
<input id="something_stuff_016_work" />

以下CSS选择器似乎不起作用:

input[id*='[0-9]*_work']

我需要在正则表达式中使用数字做一些事情,因为可以动态添加输入,并为其分配带有数字的数字。

我做错了什么?

4 个答案:

答案 0 :(得分:8)

使用以下选择器怎么样:

input[id^='something_stuff_'][id$='_work']

它将获得ID为&#34; something_stuff _&#34;用&#34; _work&#34;完成。

答案 1 :(得分:3)

CSS不支持选择器中的正则表达式。使用类或者从属性选择器开始和结束。

答案 2 :(得分:2)

解决这个问题的方法是使用类而不是id,并将样式相同的东西归类为相同的。例如:

<input id="something_stuff_01_work" class="input_class">
<input id="something_stuff_02_work" class="input_class">
<input id="something_stuff_03_work" class="input_class">

然后选择类而不是id。

.input_class {
    sweetstyleofawesomeness;
}

答案 3 :(得分:0)

尝试在数字ID前面加上\ 3。

我今天遇到了这个问题,它是使用chrometools生成的选择器,我以前从未见过,它可以使用Chromium Webdriver进行工作:

#\ 37

使用的完整选择器是“#\ 37> div> div.cell-text”。

这是一个选择器,用于选择id =“ 7”的元素。

使用我当前的设置,它(以\ 3开头)似乎可以在我要自动化的整个文档中正常工作。