基于包含值数组的data-*属性进行选择的CSS?
我需要根据名为“数据属性”的属性中的数据选择一个HTML元素。在Firefox的DOM检查器中,属性值如下所示:基于包含值数组的data-*属性进行选择的CSS?,css,css-selectors,Css,Css Selectors,我需要根据名为“数据属性”的属性中的数据选择一个HTML元素。在Firefox的DOM检查器中,属性值如下所示: <div data-attributes="[{"Id":50,"Code":"LIC","ShowInSessionFilter":false}]"> 因此,我假设属性值本身不是字符串,而是由检查器显示为Json字符串的javascript对象。问题是,如何根据节点包含的对象中的一个键/值对选择节点?这在CSS中可能吗?就CSS而言,属性只是一个字符串。您可能可以使用
<div data-attributes="[{"Id":50,"Code":"LIC","ShowInSessionFilter":false}]">
因此,我假设属性值本身不是字符串,而是由检查器显示为Json字符串的javascript对象。问题是,如何根据节点包含的对象中的一个键/值对选择节点?这在CSS中可能吗?就CSS而言,属性只是一个字符串。您可能可以使用
div[data attributes*=“LIC”]
,但这并不是检查json键-CSS中的*=运算符只是表示该属性包含该子字符串。所以它也会匹配[“LIC2”:“foo”]和类似的东西
也许
[data attributes*=”:\“LIC\”]
对于您的情况来说已经足够了。“就css而言,属性只是一个字符串。”正确。~=
将不是正确的检查,因为它会查找”
div[data-attributes~="LIC"]