是否有一个解决方法,使CSS名称以数字开头有效的类?

是否引用名称以数字开头的CSS类不起作用? 例如我发现一个类的背景是:

.000000-8 {background:url(../..http://img.dovov.comcommon/000000-0.8.png);} .8FFFFFF {background:url(../..http://img.dovov.comcommon/FFFFFF-0.8.png);} 

在我所拥有的大多数浏览器中都不起作用,而CSS语法显示出来,但是我的问题是有一个解决方法 ,使得名称以数字开头的CSS类有效吗? 。

没有CSS类。 这个问题在逻辑上分为两个问题:你能用HTML中的一个数字开始一个类名吗?(假设它的答案是“是”),你如何在CSS中使用相应的类select器?

各种HTML规范对类名施加了各种限制,但是在浏览器实践中,根据HTML5,除了类名不能包含空格字符外没有任何限制。 所以class=000000-8是有效的。

通过CSS语法规则,CSS标识符不能与未转义的数字一起存在。 因此,像.000000-8这样的select器是无效的。 但是这个数字可以通过CSS转义规则逃避 :select器

 .\30 00000-8 

或者等同地,

 .\00003000000-8 

是有效的,并匹配class=000000-8的元素。

不用说,以数字开头的类名是最好的避免,但是如果你必须使用它们(例如,因为一些HTML文档有它们,你不能改变标记),这就是方法。

是的,它在CSS规范中有logging :

在CSS中,标识符(包括元素名称,类和select器中的ID)只能包含字符[a-zA-Z0-9]和ISO 10646字符U+00A0及更高版本,连字符( - )和下划线_ ); 他们不能以数字,两个连字符或连字符后跟数字开头 。 标识符也可以包含转义字符和任何ISO 10646字符作为数字代码(参见下一项)。 例如,标识符“ B&W? ”可以写成“ B\&W\? ”或“ B\26 W\3F ”。