是否有 CSS 选择器来定位具有内联样式的元素?那么我可以只使用 CSS 来定位第一个跨度而不是第二个跨度吗?
如果没有,这可以用 jQuery 完成吗?
<p style="text-align: center;">
<span>target</span>
</p>
<p>
<span>not target</span>
</p>
是否有 CSS 选择器来定位具有内联样式的元素?那么我可以只使用 CSS 来定位第一个跨度而不是第二个跨度吗?
如果没有,这可以用 jQuery 完成吗?
<p style="text-align: center;">
<span>target</span>
</p>
<p>
<span>not target</span>
</p>
茶会有点晚了,但我想我会分享我找到并使用的解决方案。
如果您可以完全匹配样式属性,@simone 的答案是完美的。但是,如果您需要定位可能具有与之关联的其他内联样式的内联样式属性,您可以使用:
p[style*="text-align:center;"]
“*=”表示“在属性值的任意位置匹配以下值”。
有关其他选择器的更多参考或更多详细信息,请参阅 css-tricks.com 上的此博客文章:
CSS 选择器上的 Skinny
p[style="text-align: center;"] {
color: red;
}
然而,这很丑陋。
如果您想将样式应用于特定的规则声明,您也可以使用 style*。这将匹配所有具有内联样式的元素,而不管应用的值如何。
div[style*="background-image"] {
background-size: cover;
background-repeat: no-repeat;
}
利用 :
p[style] span {
color: red;
}