Html CSS选择具有部分id的元素

Html CSS选择具有部分id的元素,html,css,css-selectors,Html,Css,Css Selectors,我用PHP生成了一些元素,我想知道是否可以选择id不完整的元素,例如: <div class="1" id="as_1"> ... </div> <div class="2" id="bs_1"> ... </div> <div class="1" id="as_2"> ... </div> <div class="2" id="bs_2"> ... </div> 不使用ID选择器,因为它们需要完

我用PHP生成了一些元素,我想知道是否可以选择id不完整的元素,例如:

<div class="1" id="as_1"> ... </div>
<div class="2" id="bs_1"> ... </div>

<div class="1" id="as_2"> ... </div>
<div class="2" id="bs_2"> ... </div>

不使用ID选择器,因为它们需要完整的ID名称,但使用:


但是既然您的元素有一个
class
属性,为什么不为每组元素添加一个公共类,并按该类进行选择以使事情更简单呢?您应该能够像生成ID一样使用PHP来确定分组类。

不确定确切的分组是否与此问题匹配,但我们使用的是CodeceptJs,因此我们有两个等价的部分:

myLocator: {

// xpath: "//*[contains(@data-testid, 'drawer')]",
css: '[data-testid*="drawer"]',
},

因此,使用css
data testid*=
代替xpath contains来匹配一个元素,该元素的数据testid命名为drawer-{something\u dynamic\u added}.

这可能是阻止某些使用随机数作为div id的广告的一个好方法。答案暗示了这一点,但我认为应该直接提到:
[id^=“as”]
\as#u 1
没有相同的特殊性,因此这种方法不能用于覆盖基于id的广告styles@mizurnix:
myLocator: {

// xpath: "//*[contains(@data-testid, 'drawer')]",
css: '[data-testid*="drawer"]',
},