CSS Target伪类不改变DIV属性

时间:2012-05-03 18:30:08

标签: html css css-selectors pseudo-class

当一个DIV被定位时,我想更改一个DIV的属性。

这是我的CSS:

#boards-list:target{
    background-color: black;
}
#boards-list:target  div#schools-list{
    background-color: blue;
}

这是我的HTML:

<body>

<div id="schools-sub-nav">

<a href="#schools-list">Schools List</a> <a href="#boards-list">Boards List</a>

</div>

<div id="schools-container">

    <div id="schools-list">
    One
    </div>

    <div id="boards-list">
    Two
    </div>

</div>

我唯一想到的是我在使用目标伪类的语法上犯了一个错误。

2 个答案:

答案 0 :(得分:2)

现在,您是否希望学校列出蓝色并且电路板列表为黑色?如果是这样,只需从第二个语句中删除boards-list选择器?所以你应该:

#boards-list:target
{
    background-color: black;
}

#schools-list:target
{
     background-color: blue;
}​

DEMO:http://jsfiddle.net/3dbTq/1

答案 1 :(得分:0)

你的最后一条规则:

#boards-list:target  div#schools-list       {
                                        background-color: blue;
                                        }

不会起作用,因为boards-listschools-list是兄弟姐妹,他们不是父/子。

将其更改为:

#schools-list:target       {
                                            background-color: blue;
                                            }