包含任何数字的CSS类名称

时间:2018-11-22 19:32:07

标签: css css-selectors

我正在使用css选择器来定位以pl-0,pl-1,pl-2,pl3,... [class^="pl-"]开头的所有类第三方集成的其他类,它们使用具有类名pl-header的元素:/

有没有办法使用类似[class^="pl-[0-9]"]的东西?如果不是,我如何应用此类[class^="pl-"],除非它是特定div名称的子级?

非常感谢

3 个答案:

答案 0 :(得分:0)

您可以这样做:

   if(!isset($_POST["status"]) || empty($_POST["status"])){echo "<p> you must choose missing/found</p>";$flag =1;}

source

答案 1 :(得分:0)

针对您的问题有三种解决方案:

  1. 使用:not伪类:[class^="pl-"]组合[class^="pl-"]:not(.pl-header)选择器。

  2. 使用child combinator (>)定位不是特定ID的直接子元素的元素:div:not(#some-id) > [class^="pl-"]

  3. 使用规则specificity,方法是将规则应用于以.pl开头的所有类,并且应用 default 规则专门针对.pl-header。如果您的.pl-header规则比[class^="pl-"]选择器更具体,它将应用默认规则,从而与仅针对其他类的选择器具有相同的效果。

我个人会选择解决方案一,尽管可以随意选择最适合您的需求:)

答案 2 :(得分:0)

只说清楚。没什么要写的:

div[class^="pl-0"],
div[class^="pl-1"],
div[class^="pl-2"],
div[class^="pl-3"],
div[class^="pl-4"],
div[class^="pl-5"],
div[class^="pl-6"],
div[class^="pl-7"],
div[class^="pl-8"],
div[class^="pl-9"] {
  background-color: lightgreen;
}

div {
  display: inline-block;
  height: 50px;
  width: 50px;
  margin: 5px;
  background-color: red;
}
<div class="pl-0"></div>
<div class="pl-header"></div>
<div class="pl-1"></div>
<div class="pl-footer"></div>
<div class="pl-2"></div>
<div class="pl-test"></div>
<div class="pl-55"></div>
<div class="pl-99"></div>
<div class="pl-test"></div>
<div class="pl-888"></div>