【发布时间】:2011-09-13 03:04:07
【问题描述】:
我正在为我自己的教育创建一个 javascript 游戏。游戏需要几个页面,我通过隐藏的divs 实现这些页面,当你想查看它们时会隐藏/取消隐藏(题外话:欢迎任何关于这是否是个好主意的建议)。
我有一个 CSS 规则,它用 display: none; 隐藏我的所有 div,然后是一个用 display:block; 取消隐藏特定 div 的类。但是,似乎我的用于选择所有 div 的 css 选择器不是隐藏类,而是覆盖了类,导致规则不适用。我知道我可以使用 !important 属性来解决这个问题,但我想了解为什么我所写的内容不起作用。我认为一个类将是一个足够具体的选择器,并且规则甚至出现在隐藏规则之后。
这是我的来源:
<!DOCTYPE HTML>
<html>
<head>
<link rel="stylesheet" href="style.css" type="text/css" media="screen" charset="utf-8">
</head>
<body>
<div id="game">
<div id="content">
<div id="viewport">
<div id="home_page" class="current_page">Home</div>
<div id="work_page">Work</div>
</div>
</div>
</div>
</body>
</html>
和css:
#content
{
background: #eef;
padding: 5px;
}
#viewport div
{
display:none;
}
.current_page
{
display:block;
//display:block !important; //One solution, but not preferred
}
【问题讨论】:
标签: html css css-selectors