2016-11-23 156 views
0

我在我的应用程序上有一个任务列表。一些任务具有子任务,通过属性将其附加到他们的父母身上。用于匹配动态类名的CSS通配符选择器?

这些任务位于列表中(父项和子项任务),其中没有元素层次结构,只是一个普通的<li>元素。他们对父项的唯一附件是数据父项属性。

我想要一类适用于每一个共享父,它会很容易,如果类名是静态的,但因为它是动态的,这是比较困难的元素..

我试图做到:

.parent-element4322.red ~ li[data-parent=4322]{ 
    background:red 
} 

这将是一个静态类,我想这样的事情有各种各样的通配符:

.parent-element*.red ~ li[data-parent=*]{ 
    background:red 
} 

在其中,很明显,无论是* S将匹配同一班,而不是任何班。

关于如何实现的任何想法?

+0

看看这个:http://stackoverflow.com/questions/5110249/wildcard-in-css-for-classes – k97513

+0

是的,我以前看过这篇文章,那将匹配任何元素,我需要的东西匹配第一个,然后匹配第二个相同的第一个 – raphadko

回答

0

它看起来像你试图匹配data-parent属性对应于基于另一个元素的.parent-element*类的现有数字的元素。不幸的是,Selectors does not support this

根据您对标记的描述,我不认为除了DOM操作之外,还有很多其他的解决方法。我希望补充一点,那就是最好在子任务上标记嵌套列表。但是,如果您无法控制源标记,则必须找到其他方法。

+0

我想这也行不通,即使匹配数据父项属性? (名字未知) – raphadko

+0

@raphadko:如果您将子任务放入嵌套的ul/li元素中,您可以简单地选择每个父任务的后代的子任务元素,而不需要数据父项属性或基于任务的匹配id,即'.red li {background:red}' – BoltClock