导航栏固定在左侧 - Bootstrap

5

我正在尝试将Bootstrap中的导航栏固定在左侧,就像此链接中所示。虽然它能够工作,但是当我添加leaflet地图的块内容时,我的导航栏仍然存在,但我无法点击它。此外,当我悬停在链接上时,我也没有鼠标指针。这是我更改的代码:

<!--NAVBAR-->
        <div class="navbar navbar-inverse navbar-fixed-left">
          <a class="navbar-brand" href="#">Brand</a>
          <ul class="nav navbar-nav">
           <li class="dropdown"><a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <span class="caret"></span></a>
             <ul class="dropdown-menu" role="menu">
              <li><a href="#">Sub Menu1</a></li>
              <li><a href="#">Sub Menu2</a></li>
              <li><a href="#">Sub Menu3</a></li>
              <li class="divider"></li>
              <li><a href="#">Sub Menu4</a></li>
              <li><a href="#">Sub Menu5</a></li>
             </ul>
           </li>
           <li><a href="#">Link2</a></li>
           <li><a href="#">Link3</a></li>
           <li><a href="#">Link4</a></li>
           <li><a href="#">Link5</a></li>
          </ul>
        </div>

        </div>
        <div class="container col-sm-12">
            <div class="row">
                {% block map_content %}
                        replace me
                {% endblock map_content %}
            </div>
        </div> 

在此之前,我尝试过更为优雅的解决方案。我使用了Bootstrap4并尝试了类似于这样的方法:

<nav  class="navbar navbar-inverse fixed-left">
          <div class="container-fluid">
            <div class="navbar-header">
                <a class="navbar-brand" href="{% url 'index' %}"><p class="logo_name">page name</p></a>
            </div>
            <ul class="nav navbar-nav">
               <li><a href="#">1</a></li>
               <li><a href="#">2</a></li>
               <li><a href="#">3</a></li>
               <li><a href="#">4</a></li>
            </ul>
          </div>
        </nav>

但是它不起作用,在这种情况下,我的导航栏是固定在顶部的,而不是左边。

1个回答

0

尝试添加这些内容。添加额外的CSS以修改现有类。

添加以下额外的CSS:

<style>
.navbar-fixed-left {
width: 140px;
position: fixed;
border-radius: 0;
height: 100%;
}

.navbar-fixed-left .navbar-nav > li {
float: none;  /* Cancel default li float: left */
width: 139px;
}

.navbar-fixed-left + .container {
padding-left: 160px;
}

/* On using dropdown menu (To right shift popuped) */
.navbar-fixed-left .navbar-nav > li > .dropdown-menu {
margin-top: -50px;
margin-left: 140px;
}
</style>

我已经从我提问中放置的链接中获取了那个CSS文件。 - Neven
如果你在一个单独的文件中编写CSS,链接CSS文件时可能会出现问题。你有一个(base.html)文件吗?检查路径是否正确。尝试在HTML文件中使用<style></style>标签。 - Riwaj Chalise
没问题。没有leaflet块,一切正常。我得到了一个左侧固定的导航栏,它可以工作。有了leaflet块,我也得到了左侧固定的导航栏,但它不起作用。所以,这不是因为CSS文件,而是因为我放在代码中的块内容(其中包括leaflet)。 - Neven

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接