1

我正在尝试在 ASP.NET 中练习 React。但是,我注意到在进行一些研究后,最新的 Bootstrap 4 似乎没有提供相同的导航栏类,当我运行我的项目并到达索引文件时,会出现以下屏幕:

当前索引页面呈现

鉴于 CSS 已随 Bootstrap 4 发生变化,是否有人建议更改布局页面以便我可以使用该 CSS 进行渲染?

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>@ViewBag.Title - My ReactASP.NET Application</title>
    <link href="~/Content/bootstrap.css" rel="stylesheet" media="all" type="text"/>
    <link href="~/Content/Site.css" rel="stylesheet" media="all" />
    @RenderSection("head", required: false)
</head>
<body>
    <div class="navbar navbar-dark fixed-top">
        <div class="container">
            <div class="navbar-header">
                <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
                @Html.ActionLink("React Example", "Index", "Home", new { area = "" }, new { @class = "navbar-brand" })
            </div>
            <div class="navbar-collapse collapse">
                <ul class="nav navbar-nav"></ul>
            </div>
        </div>
    </div>

    <div class="container body-content">
        @RenderBody()
        <hr />
        <footer>
            <p>&copy; @DateTime.Now.Year - My ASP.NET Application</p>
        </footer>
    </div>

    <script src="~/Scripts/modernizr-2.8.3.js"></script>
    <script src="~/Scripts/jquery-3.3.1.js" media="all"></script>
    <script src="~/Scripts/bootstrap.js" media="all"></script>
    <script src="~/Scripts/popper.js"></script>

    <script src="~/Scripts/popper-utils.js"></script>
    @RenderSection("scripts", required: false)
</body>
</html>

旁注:我尝试按照下一页的说明进行操作,但无济于事。

https://medium.com/@ashwinigupta/how-to-migrate-from-bootstrap-3-template-to-4-in-asp-net-core-application-7da01a1acf99

4

2 回答 2

0

将您的 button.navbar-toggle 替换为:

    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target=".navbar-collapse" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
        <span class="navbar-toggler-icon"></span>
    </button>

如果我没记错的话,那是我从 bootstrap 3 转到 bootstrap 4 时唯一改变的地方。

于 2018-09-16T00:13:10.707 回答
0

解决导航栏问题的最简单方法是遵循官方导航栏文档并从头开始构建它。由于它是一个小组件,因此不会花费太多时间。我注意到的一件事是您将导航栏类与 div 一起使用。尝试将其与导航标签一起使用。

这是一个非常简单的例子:

<nav class="navbar navbar-expand-sm bg-dark navbar-dark fixed-top">
  @Html.ActionLink("React Example", "Index", "Home", new { area = "" }, new { @class = "navbar-brand" })
  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#collapsibleNavbar">
    <span class="navbar-toggler-icon"></span>
  </button>
  <div class="collapse navbar-collapse" id="collapsibleNavbar">
    <ul class="navbar-nav">
      <li class="nav-item">
        <a class="nav-link" href="#">Link 1</a>
      </li>
      <li class="nav-item dropdown">
        <a class="nav-link dropdown-toggle" href="#" id="navbardrop" data-toggle="dropdown">
          Dropdown link
        </a>
        <div class="dropdown-menu">
          <a class="dropdown-item" href="#">Link 1</a>
          <a class="dropdown-item" href="#">Link 2</a>
          <a class="dropdown-item" href="#">Link 3</a>
        </div>
      </li>
    </ul>
  </div>
</nav>
于 2018-09-16T00:15:20.443 回答