类引用前的*是什么意思?

时间:2015-10-19 08:53:02

标签: html css html5 css3

我的代码如下:

<div class="new-modal *max-height--xxl flex--0-1">

我想知道*max-height--xxl在这里意味着什么?

这是与wildcard * in CSS for classes

不同的问题

我想在html类引用中询问*前缀。

2 个答案:

答案 0 :(得分:13)

全球意义上的任何事物。在HTML5中,对class属性可包含的字符没有限制(空格字符除外,用于分隔多个类)。

例如,以下HTML有效:

<figure class="foo bar baz %foo *bar _baz 'foo (bar )baz"></figure>

此处foo是一个类,%foo是第二个不相关的类,'foo是第三个不相关的类。

以下内容也有效:

<figure class="%*_'()"></figure>

HTML5规范声明class属性必须是space-separated tokens的一组。它继续将这些定义为:

  

一组空格分隔的标记是一个包含零个或多个单词(称为标记)的字符串,由一个或多个空格字符分隔,其中单词由一个或多个字符组成,其中没有一个是空格字符。

值得注意的是,这些符号可能需要转义(通过在它们前面添加反斜杠(\)字符),以便被CSS选择器作为目标。

.\%\*\_\'\(\) {
  color: red;
}
<figure class="%*_'()">
  Hello, world!
</figure>

答案 1 :(得分:5)

它并不意味着什么特别的东西。类名称以*字符开头。

它可能是一个旨在更改类名的黑客,并且有效地将其注释掉,因此它不再与CSS选择器匹配。

&#13;
&#13;
var c = document.querySelector('div').classList;
var list = [];
for (var i = 0; i < c.length; i++) {
  list.push(c[i]);
};
document.body.innerHTML = list.join(" / ");
&#13;
<div class="new-modal *max-height--xxl flex--0-1"></div>
&#13;
&#13;
&#13;