【问题标题】:Where am I going wrong with the CSS selector? [closed]CSS选择器哪里出错了? [关闭]
【发布时间】:2013-05-26 07:53:33
【问题描述】:

我已阅读 the question about combining the class and ID in the CSS selector,但它对我不起作用,我不知道我哪里出错了。

我有以下一组 div:

<div id="maincontent" class="2col clearfix">
    <div id="leftcolumn">content</div>
</div>

以及我的css中的以下内容:

#maincontent.2col {
    width: 840px;
    margin: 0px auto; 
    text-align: center;
}

#maincontent.2col #leftcolumn   {
    float: left;
    width: 490px;
    margin: 0 10px 0 0;
    /*border: 1px solid #000;*/
    text-align: left;
}

但是,当我使用 firebug 时,#leftcolumn div 没有任何反应。

如果我从两者中删除.2col,它会像我期望的那样工作,但我希望在其中有 2col 类,因为我将有一个 3 列布局,而我没有想要拥有多个样式表。有什么想法吗?

编辑:抱歉,这不是我的 HTML 中的拼写错误,而是在尝试将其写在这里时拼写错误。

【问题讨论】:

  • 我将建议重新打开它。我想说有些人(包括我问过同样问题的一些前端人员)不知道你不能有一个以数字开头的 CSS 类。

标签: css


【解决方案1】:

你拼错了类属性

<div id="maincontent" class="2col clearfix">
   <div id="leftcolumn">content</div>
</div>

#maincontent.2col {
width: 840px;
margin: 0px auto; 
text-align: center;
}

#maincontent.2col #leftcolumn   {
float: left;
width: 490px;
margin: 0 10px 0 0;
/*border: 1px solid #000;*/
text-align: left;
}

而且您不能在 CSS 中以数字开头的类名 - 您的选择器将无法工作,除非您更改它。

来自 2.1 规范:

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

【讨论】:

  • 正如我在上面发布的那样,这是我的问题中的一个错字
  • 你不能在 CSS 中以数字开头类名——这就是问题
【解决方案2】:

您的课程不能以数字开头。

CSS 2.1:

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

CSS 3:

在 CSS3 中,标识符(包括元素名称、类和 ID) 选择器(参见 [SELECT] [or is this still tr​​ue]))只能包含 字符 [A-Za-z0-9] 和 ISO 10646 字符 161 及更高,加上 连字符 (-) 和下划线 (_); 不能以数字开头 或连字符后跟数字。它们还可以包含转义 字符和任何 ISO 10646 字符作为数字代码(见下 物品)。例如,标识符“B&W?”可以写成“B\&W\?” 或“B\26 W\3F”。 (参见 [UNICODE310] 和 [ISO10646]。)

参见http://www.w3.org/TR/CSS21/syndata.html#charactershttp://www.w3.org/TR/css3-syntax/#characters,以及Which characters are valid in CSS class names/selectors?

【讨论】:

    【解决方案3】:

    class 属性拼写错误

    【讨论】:

    • OP 更新了他的问题并说他打错了。
    猜你喜欢
    • 1970-01-01
    • 2015-03-13
    • 1970-01-01
    • 1970-01-01
    • 2022-01-17
    • 1970-01-01
    • 2012-04-17
    • 2013-02-06
    • 1970-01-01
    相关资源
    最近更新 更多