是否有一个 CSS 选择器可以针对特定属性值而不管其属性如何?我正在寻找类似
[*="value"]
(使用通配符)或 {value}
(直接值选择器)的东西。
简单的答案是不。我们必须使用任何基本选择器或属性选择器。
这是所有 CSS 选择器的列表。
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors
您找不到任何值选择器:)
不。 CSS 属性选择器旨在根据属性进行选择(因此得名)。如果您想根据值而不是 attribute 或 attribute value 选择某些内容,那么只需使用 CSS 类即可。
或者,您可以编写一个详细选择器,其中包含文档将包含的所有属性(因为您应该提前知道该信息),例如:
div[data-value="value"], div[href="value"], div[hello="value"], div[goodbye="value"] {
color: red;
}
<div data-value="value">Red</div>
<div>Black</div>
<div href="value">Red</div>
<div hello="value">Red</div>
<div goodbye="value">Red</div>
<div>Black</div>
<div>Black</div>
其他受访者给出的答案不正确。您可以通过省略选择器中的 ="" 来选择没有关联值的属性。例如 *[class] { display: none; } 将隐藏分配有类的任何元素。