【问题标题】:What is wrong with this css targeting? [duplicate]这个css定位有什么问题? [复制]
【发布时间】:2013-06-15 00:34:09
【问题描述】:

我今天可能盯着电脑屏幕太久了,看了一些小东西,但为什么我不能针对这些单独的单元格呢? (a1、a2、a3 等...)

<div class="row-a">
    <div class="a">
        <div class="1"></div>
            sdf
    </div>
    <div class="a">
        <div class="2"></div>
    </div>
    <div class="a">
        <div class="3"></div>
    </div>
    <div class="a">
        <div class="4"></div>
    </div>
    <div class="a">
        <div class="5"></div>
    </div>
    <div class="a">
        <div class="6"></div>
    </div>
    <div class="a">
        <div class="7"></div>
    </div>
    <div class="a">
        <div class="8"></div>
    </div>
    <div class="a">
        <div class="9"></div>
    </div>
    <div class="a">
        <div class="10"></div>
    </div>
</div>

CSS:

div.row-a div.a div.1 {
    border: 1px solid green;
    margin-left: 5px;
    margin-top: 5px;
    background-color:red;
    height: 50px;
    width: 50px;
}

jsFiddle:http://jsfiddle.net/tuHLE/

【问题讨论】:

  • 你的类名可能在 HTML5 中有效,但这并不能使它们在 CSS 中有效。

标签: html css css-selectors


【解决方案1】:

您不能以数字开头类名,这就是您的代码不起作用的原因。

见Which characters are valid in CSS class names/selectors?。

编辑:好吧,好吧,不完全是。从技术上讲,您可以以数字开头的类名。事实上,您几乎可以使用任何东西作为类名(NUL 除外)。但是,如果您使用以数字开头的类名,则必须在 CSS 中对其进行转义。例如,要选择您的 class="1" div,您可以执行以下操作:

.row-a .a .\31 {...}

更多信息请参见http://mathiasbynens.be/notes/css-escapes。

【讨论】:

  • 你(和其他人)是对的。感谢您的帮助。我最终将数字更改为文本(一、二、三等)
  • 您也可以使用属性选择器,例如[class="1"]{} - 它必须被引用
猜你喜欢
  • 1970-01-01
  • 2020-06-17
  • 2015-09-08
  • 1970-01-01
  • 1970-01-01
  • 2015-11-29
  • 2011-02-06
  • 2018-04-06
相关资源
最近更新 更多