我试图选择一个有两个不同类的元素,不幸的是这些类名被部分随机化(标记不在我的控制范围内),例如。
<div class="thing1_abc thing2_def"></div>
如果类名的第二部分是随机的,则abc
和def
部分在每个页面加载之间不一致。
我唯一能想到的是:
div[class^="thing1_"][class^="thing2_"]{ }
但似乎你不能在一个选择器中使用多个类属性选择器,有没有办法实现这个目的?或者根据它的类选择这个元素的任何替代方案?
答案 0 :(得分:5)
^=
与整个类属性字符串的开头有关,这就是为什么thing2_
无法匹配的原因。您可以使用*=
代替,如下所示:
div[class*="thing1_"][class*="thing2_"]{ }
但那也符合some_class_thing1_
。如果你可以确定这样的类永远不会存在,那么这仍然可以满足你的需求。但除此之外,我没有看到纯粹的CSS解决方案。