w3c css验证器解析错误

时间:2014-03-21 22:19:05

标签: css w3c-validation

我收到一个不寻常的错误。试图删除我在CSS中的最后一个w3c错误,并留下以下内容:

.2-col-width-left { float:left; margin-top:10px; width:63%; }
.2-col-width-right { padding-top:10px; float:right; width:37%; text-align:right; }
.3-col-width-left { float:left; margin-top:10px; width:60%; }
.3-col-width-right { padding-top:10px;float:right; width:40%; text-align:right; }
.4-col-full { padding:5px 0; width:100%; text-align:center; }
.4-col-title { margin-top:10px; width:100%; }

我得到PARSE ERROR但不明白为什么。用Google搜索但没有运气。有什么建议?

2 个答案:

答案 0 :(得分:2)

问题是您的选择器是以数字开头的。您的选择器应该只以字母或转义编号开头。有关详细信息,请参见此处:

http://www.markinns.com/articles/full/using_numbers_as_css_class_or_id_values

Which characters are valid in CSS class names/selectors?

答案 1 :(得分:1)

问题是,根据CSS spec

  

在CSS中,标识符(包括元素名称,类和ID)   选择器)只能包含字符[a-zA-Z0-9]和ISO 10646   字符U + 00A0和更高,加上连字符( - )和下划线   (_);他们不能以数字,两个连字符或连字符开头   一个数字。标识符还可以包含转义字符和任何字符   ISO 10646字符作为数字代码(参见下一项)。

但你可以逃脱它们。只需在开头的数字前添加\00003

.\000032-col-width-left { float:left; margin-top:10px; width:63%; }
.\000032-col-width-right { padding-top:10px; float:right; width:37%; text-align:right; }
.\000033-col-width-left { float:left; margin-top:10px; width:60%; }
.\000033-col-width-right { padding-top:10px;float:right; width:40%; text-align:right; }
.\000034-col-full { padding:5px 0; width:100%; text-align:center; }
.\000034-col-title { margin-top:10px; width:100%; }