运行 NuGet 更新后 MVC 引导程序导航栏不起作用 [英] MVC bootstrap navbar not working after running NuGet updates
问题描述
在我们更新所有 NuGet 包后,一个 MVC 应用程序崩溃了.在尝试了一切之后,我创建了一个新的 MVC 应用程序,更新了 NuGet 包和基本的导航栏...
<div class="navbar-collapse collapse"><ul class="nav navbar-nav"><li><a href="/">首页</a></li><li><a href="/Home/About">关于</a></li><li><a href="/Home/Contact">联系方式</a></li><ul class="nav navbar-nav navbar-right"><li><a href="/Account/Register" id="registerLink">注册</a></li><li><a href="/Account/Login" id="loginLink">登录</a></li>
...看起来像这样...
...然后点击图标...
任何想法可能导致这种情况?
尝试手动将 Bootstrap.css 和 Bootstrap.js 添加到 _Layout.vbhtml,但没有区别
谢谢
最后,我管理了我和你的 HTML.与版本 3 相比,Bootstrap 4 有很多变化.关于你的标记,你必须改变:
- Navbar-inverse"到Navbar-dark"并使用颜色bg-dark".
- 为按钮添加一些属性,如用于链接到另一个元素的aria-controls"、aria-expanded"、aria-label"和data-target".
- 属性id"到可折叠元素.
- 对于列表元素(标签 LI)应该添加 class="nav-item"
- 对于非列表元素的链接,添加 class="nav-link".
- 我建议在列表定义中添加mr-auto".
以下所有更改.在此处测试.
<nav class="navbar navbar-expand-sm navbar-dark fixed-top bg-dark"><div class="容器"><button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle导航">按钮><a class="navbar-brand" href="/">应用名称</a><div class="navbar-collapse collapse" id="navbarSupportedContent"><ul class="nav navbar-nav mr-auto"><li class="nav-item"><a href="/" class="nav-link">首页</a></li><li class="nav-item"><a href="/Home/About" class="nav-link">关于</a></li><li class="nav-item"><a href="/Home/Contact" class="nav-link">联系方式</a></li><ul class="nav navbar-nav navbar-right mr-auto"><li class="nav-item"><a href="/Account/Register" id="registerLink" class="nav-link">注册</a></li><li class="nav-item"><a href="/Account/Login" id="loginLink" class="nav-link">登录</a></li>
</nav>