1
<body>
  <div id="header">
    <div id="header_center">
      <div class="logo"></div>
    </div>

我想使用以下 CSS:

#header#header_center.logo {
  float:left;
  background-image: url(images/logo.png);
  background-repeat: no-repeat; 
  width: 297px;
  height: 85px;
}

...但它不起作用。如果我只使用“.logo”,那么它就可以了。为什么我不能使用“#header#header_center.logo”?

4

4 回答 4

7

您发布的 CSS 将选择如下所示的元素:

<div id="header header_center" class="logo"></div>

您需要做的是在选择器之间添加空格,以便选择嵌套元素。

#header #header_center .logo { ...
于 2012-06-06T08:13:35.830 回答
2

在 class 和 id 之间插入空格并关闭你的一个 div 标签

#header #header_center .logo {
    float:left;
    background-image: url(images/logo.png);
    background-repeat: no-repeat; 
    width: 297px;
    height: 85px;
}

你的 html 应该是

<div id="header">
        <div id="header_center">          
            <div class="logo"></div></div></div>
于 2012-06-06T08:13:43.837 回答
1

您需要在 ids/ 类之间留一个空格,如下所示:

#header #header_center .logo {
    ...
}

不留空格将为具有所有这些属性的单个元素指定一个 css 挂钩(显然是错误的,因为每个元素上不能有多个 id 属性)

于 2012-06-06T08:14:14.210 回答
1

尝试#header #header_center .logo

于 2012-06-06T08:14:45.780 回答