按内联样式属性的CSS选择器

zujrkrfu  于 2023-04-01  发布在  其他
关注(0)|答案(4)|浏览(143)

是否有一个CSS选择器通过其inline style属性值选择此元素?

<div style='display:block'>...</div>

比如

div[cssAttribute=cssValue]
flmtquvp

flmtquvp1#

内联style属性与任何其他HTML属性没有什么不同,可以与子字符串属性选择器匹配:

div[style*="display:block"]

然而,正是因为这个原因,它非常脆弱。由于属性选择器不支持正则表达式,因此您只能执行属性值的 * 精确 * 子串匹配。例如,如果您在属性值中的某个位置有空格,如下所示:

<div style='display: block'>...</div>

它不会匹配,除非你改变你的选择器来适应空格。然后它会停止匹配那些不包含空格的值,除非你包含所有的排列,令人作呕。但是如果你正在处理一个文档,其中的内联样式声明本身不太可能改变,你应该没问题。
还要注意的是,这根本不是通过DOM中反映的实际指定,计算或使用的值来选择元素。

hrysbysz

hrysbysz2#

包括”;“对我来说更好

div[style*="display:block;"]
bfnvny8b

bfnvny8b3#

始终查看属性在HTML中是如何编写的(您可以在浏览器的Elements选项卡中检查它)。您必须使用完全相同的值。在我的情况下:style="left: 100%;"而不是style="left:100%"之类的

7ivaypg9

7ivaypg94#

我刚刚签入项目,上面的规则不起作用。只有精确的类描述起作用:[style="display: block;"]也许只是我,但要小心

相关问题