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

时间:2017-11-01 11:17:05

标签: css css-selectors

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

<div class="thing1_abc thing2_def"></div>

如果类名的第二部分是随机的,则abcdef部分在每个页面加载之间不一致。

我唯一能想到的是:

div[class^="thing1_"][class^="thing2_"]{ }

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

1 个答案:

答案 0 :(得分:5)

^=与整个类属性字符串的开头有关,这就是为什么thing2_无法匹配的原因。您可以使用*=代替,如下所示:

div[class*="thing1_"][class*="thing2_"]{ }

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