4

每次单击导航栏的品牌时,我都想打开一个下拉菜单(使用 Twitter Bootstrap),所以我尝试了以下代码:

<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="tabbable">
    <div class="dropdown">
    <a id="drop1" class="dropdown-toggle" data-toggle="dropdown" href="#menu">
        <div class="brand">Brand</div>
    </a>
    <ul class="dropdown-menu" role="menu" aria-labelledby="drop1">
        <li><a href="#">Action</a></li>
    </ul>
    </div>
<ul class="nav">
    <li>
        <a href="#" data-toggle="tab">Item</a>
    </li>
</ul>
</div>
</div>
</div>

结果:当我点击它时,会出现菜单,但它品牌上方,而不是. 如何解决?

例子

4

1 回答 1

8

要正确呈现下拉菜单,您的品牌必须是一个.nav li元素。所以只需将.brand类添加到标准下拉列表中。

<div class="navbar navbar-fixed-top">
    <div class="navbar-inner">
        <div class="tabbable">
            <ul class="nav">
                <li class="dropdown">
                    <a id="drop1" class="dropdown-toggle brand" data-toggle="dropdown" href="#menu">
                        Brand
                    </a>
                    <ul class="dropdown-menu" role="menu" aria-labelledby="drop1">
                        <li><a href="#">Action</a></li>
                    </ul>
                </li>
                <li>
                    <a href="#" data-toggle="tab">Item</a>
                </li>
            </ul>
        </div>
    </div>
</div>

这会破坏你的品牌定位,但你可以用这个简单的 CSS 修复它:

.navbar .brand {
    margin-left: 10px; /* This value could be different for another layout */
}
于 2012-09-07T14:20:30.867 回答