通过部分文本使用两个不同的类选择元素

DBS*_*DBS 3 css css-selectors

我试图选择一个有两个不同类的元素,不幸的是这些类名是部分随机的(标记不在我的控制范围内),例如

<div class="thing1_abc thing2_def"></div>
Run Code Online (Sandbox Code Playgroud)

如果类名的第二部分是随机的,那么abcdef每个页面加载之间的部分将不一致.

我唯一能想到的是:

div[class^="thing1_"][class^="thing2_"]{ }
Run Code Online (Sandbox Code Playgroud)

但似乎你不能在单个选择器中使用多个类属性选择器,有没有办法实现这一点?或者根据它的类选择这个元素的任何替代方案?

Con*_*roß 5

^=涉及到整个类属性附加伤害字符串的开头,这就是为什么thing2_会不匹配.您可以使用*=,如下所示:

div[class*="thing1_"][class*="thing2_"]{ }
Run Code Online (Sandbox Code Playgroud)

但那也会匹配some_class_thing1_.如果你可以确定这样的类永远不会存在,那么这仍然可以满足你的需求.但除此之外,我没有看到纯CSS解决方案.