0

我一直在玩 CSS,但遇到了一个非常可怕的问题 - 位置:已修复。问题是我正在编辑 wordpress 模板,众所周知,每个模板中都有一个带有 position:fixed 的管理栏。我尝试在该管理栏下方添加另一个栏,例如菜单,但它始终不直接显示在管理栏下方,而是在其下方约 50px 处显示。菜单是固定的,但不是在我希望它显示的确切位置。

我不能放置带有属性 top:28px 的菜单栏,因为管理员只对注册用户可见,所以对于客人来说,菜单仍会在不可见对象下方浮动 28px。至于注册,那很好,但正如我所说,不适合客人。

粘贴管理栏和菜单的代码,也许你们中的一些人可能会发现问题......

#headerbar {
    min-width: 100%;
    height: 55px;
    background-color: rgb(0, 166, 81);
    z-index: 999999;
    position:fixed;
} 

#wpadminbar {
    direction: ltr;
    color: rgb(204, 204, 204);
    font: 13px/28px sans-serif;
    height: 28px;
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    min-width: 600px;
    z-index: 9999;
    background: linear-gradient(to top, rgb(55, 55, 55) 0px, rgb(70, 70, 70) 5px) repeat scroll 0% 0% rgb(70, 70, 70);
}

如果这还不足以发现问题,我可以发布正文 CSS(如果只需要的话?)。

4

1 回答 1

0

您可以为已登录和未登录的用户设置不同的最高位置。就像,给你的标题栏一个默认的顶部位置 0,当用户登录和管理员时,给它一个额外的“with-admin-bar”类,它将顶部位置设置为 28px 左右。

编辑:实际上,这是更正确和更干净的解决方案:

CSS:

.bar-wrapper {
    position: fixed;
    top: 0;
    left: 0;

    width: 100%
}

.admin-bar {
    height: 50px;
    background: red;
}

.other-bar {
    height: 50px;
    background: blue;
}

HTML:

<div class="bar-wrapper">
    <div class="admin-bar"></div>
    <div class="other-bar"></div>
</div>

现场观看:http: //jsfiddle.net/CVeXA

于 2013-06-24T10:15:43.113 回答