html - Bootstrap 导航项未在移动设备上显示

标签 html css twitter-bootstrap

我目前正在使用 bootstrap 做一些小事。这里我有一个导航栏。对于导航项“登录”和“注销”,我使用 justify-content-end 将其设置在右侧。在大屏幕设备上,这就是我想要的样子。但是,当我使用移动设备打开它时,导航栏会按预期折叠,但带有 justify-content-end 的元素不会显示。

有什么想法吗? 谢谢

  <nav class="navbar navbar-expand-lg navbar-dark bg-primary">
  <a class="navbar-brand" href="#">Jatitree</a>
  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>
  <div class="collapse navbar-collapse" id="navbarNavAltMarkup">
    <div class="navbar-nav">
      <a class="nav-item nav-link" id="home" href="<?php echo base_url();?>">Home <span class="sr-only">(current)</span></a>
      <a class="nav-item nav-link" href="<?php echo base_url();?>BuyCars">Buy Goods</a>
      <a class="nav-item nav-link" href="<?php echo base_url();?>SellGoods">Sell Goods</a>
    </div>
  </div>

  <div class="collapse navbar-collapse justify-content-end" id="navbarNavAltMarkup">
    <ul class="navbar-nav">
      <li class="nav-item"</li>
        <?php
          if (!$this->session->userdata('logged_in'))
            echo '<a class="nav-link" href="'.base_url().'/Login">Login</a>';
            else echo '<a class="nav-link" href="#">Logout</a>';
        ?>
    </ul>
  </div>
</nav>

on large device

on small device/ mobile

最佳答案

HTML 的结构不正确(a 应该在 li 内,而 li 缺少右括号)。但是,问题是您用相同的 id 命名了 2 个元素,这将不起作用。只需使用一个类名(即:navbar-alt)来切换 collapse 导航栏并在 data-target 中定位此类。

https://www.codeply.com/go/BaZHtvCoAR

<nav class="navbar navbar-expand-lg navbar-dark bg-primary">
    <a class="navbar-brand" href="#">Jatitree</a>
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target=".navbar-alt" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
        <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse navbar-alt" id="navbarNavAltMarkup">
        <div class="navbar-nav">
            <a class="nav-item nav-link" id="home" href="&lt;?php echo base_url();?&gt;">Home <span class="sr-only">(current)</span></a>
            <a class="nav-item nav-link" href="&lt;?php echo base_url();?&gt;BuyCars">Buy Goods</a>
            <a class="nav-item nav-link" href="&lt;?php echo base_url();?&gt;SellGoods">Sell Goods</a>
        </div>
    </div>
    <div class="collapse navbar-collapse justify-content-end navbar-alt">
        <ul class="navbar-nav">
            <li class="nav-item nav-link">
                Logout
            </li>
        </ul>
    </div>
</nav>

关于html - Bootstrap 导航项未在移动设备上显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48186704/

相关文章:

html - 是否可以通过浏览器开发工具查看浏览器正在使用哪个 srcset 图像

css - 高分辨率屏幕上的网站太小

html - 带一个div向前

jquery - 面包屑 V 形 CSS

javascript - 在 HTML 中创建表单时如何使用 javascript 和 jquery 从本地存储加载变量

HTML "Already defined"错误

html - 如何在不使用任何 javascript 或 jquery 插件的情况下制作等高系统

html - 控制HTML5拖放效果的外观

css - 静态 CSS 文件不适用于 expressJS 应用

html - 是否可以根据其内容减小 `<span>` 上的字体大小?