将CSS应用于包含col-子字符串的一组CSS类

46

我不确定用什么措辞最好,这可能就是为什么尽管它很简单,但我仍然很难研究出来的原因。

我的目标是对一组类应用CSS。

例如,我有 .col-1, .col-2, .col-3, .col-4 这些类。

我想做的是制作一些CSS代码,可以针对所有带有文本 col- 的类进行样式更改,这样我就不必将其应用于每个单独的数字。

我肯定以前见过这种情况,但现在想不起来该怎么做了。

2个回答

114
您可以使用 [class*="col-"] CSS属性选择器 来选择包含至少一个 col- 的元素作为其 class 值的任何元素。
[class*="col-"] {
    border-color: red;
}

如果所有的class属性值都以col-开头,你可以使用[class^="col-"]选择器。

但是,为了防止被选择类似于foo-col-1这样的类,你可以使用上述两个选择器的组合,如下所示(感谢@JosephSpens

[class^="col-"], [class*=" col-"] {
  border-color: red;
}

演示链接.


如果它们所有的类名都以 col 开头(从问题中并不是非常清楚),则 [class^=col-] 可能更合适。 - SW4
2
为了避免样式影响到不想修改的类,如 .span-col-1,你可以使用 [class^="col-"], [class*=" col-"] - Joseph Spens
针对您最后一次编辑关于class值是否以选择器开头的问题,假设任何给定元素的类列表中的任何一个类都是第一个类是不好的编程习惯。 - Joseph Spens
是的,那就是我在寻找的! - Suzi Larsen
1
@JosephSpens 感谢您的建议。已添加到答案中。 - Hashem Qolami
这非常有用。我可以确认我是否可以通过使用 [id^=titl] 来区分 <tbody> 和 <tbody id="titlxxxx"> 吗?它似乎工作得很好,但我只是想确保一下。 - matt

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接