【问题标题】:navbar-header and navbar-nav are not lining upnavbar-header 和 navbar-nav 没有对齐
【发布时间】:2019-11-14 00:14:04
【问题描述】:

我无法让我的 navbar-header 和 navbar-nav 项目正确排列。 navbar-header 在导航栏中垂直居中,而 navbar-nav 看起来像是 align="top"。

这是截图:

这里是菜单的代码:

<div class="navbar navbar-inverse navbar-fixed-top">
        <div class="container">
            <div class="navbar-header">
                @Html.ActionLink("Thomas A Farmer, Author", "Index", "Home", new { area = "" }, new { @class = "navbar-brand" })
            </div>
            <ul class="navbar-nav">
                <li class="nav-item">
                    <a href="~/Home/Index">Home</a> |
                </li>
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">About <span class="caret"></span></a> |
                    <ul class="dropdown-menu">
                        <li><a href="~/Home/About">About the Author</a></li>
                        <li><a href="~/Home/BKB">Black Knight Books</a></li>
                        <li><a href="~/Home/Contact">Contact</a></li>
                        <li><a href="~/MailingListEntries/Create">Mailing List</a></li>
                    </ul>
                </li>
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Books and Stories <span class="caret"></span></a> |
                    <ul class="dropdown-menu">
                        <li>@Html.ActionLink("Novels", "Index", "BooksAndStories", new { novel = true }, htmlAttributes: null)</li>
                        <li>@Html.ActionLink("Short Stories", "Index", "BooksAndStories", new { novel = false }, htmlAttributes: null)</li>
                        <li>@Html.ActionLink("WIP", "WIP", "BooksAndStories", null, htmlAttributes: null)</li>
                    </ul>
                </li>
                <li class="nav-item">
                    <a href="~/Reviews/Index">Reviews</a> |
                </li>
                <li class="nav-item">
                    <a href="~/OtherProjects/Index">Other Projects</a> |
                </li>
                @if (User.Identity.IsAuthenticated)
                {
                    <li class="dropdown">
                        <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Admin Tools<span class="caret"></span></a>
                        |
                        <ul class="dropdown-menu">
                            <li><a href="~/MailingListEntries/Index"> Edit Mailing List</a></li>
                            <li><a href="~/Blog/Create">Add Blog Entry</a></li>
                        </ul>
                    </li>
                }
            </ul>
            @Html.Partial("_LoginPartial")
        </div>
    </div>
    <div class="container body-content">
        @RenderBody()
        <hr />
        <footer>
            <p>&copy; @DateTime.Now.Year - TAFarmerAuthor</p>
        </footer>
    </div>

有人有什么想法吗?我仍在学习 MVC 和 Razor,但我无法在 google 上找到任何直接解决此问题的答案。

【问题讨论】:

  • 这并不能回答您的问题,而只是一个建议。您应该使用 asp-tag 助手,它将帮助您更好地导航。
  • @Carthax、navbar-navnavbar-headerbootstrap 样式规则。如果需要,您可以覆盖这些样式规则。我相信您的navbar-item 有额外的填充或边距,请在您的浏览器选择的开发人员工具中查看。

标签: css twitter-bootstrap razor


【解决方案1】:

--edit: 你用的是什么版本的引导程序?您向我们展示的内容类似于 3.x

--edit2: https://getbootstrap.com/docs/3.4/components/#navbar 是您使用的版本...我建议移动到 4.3.1...

如果这是最新版本的引导程序,您错过了类属性中的标签

//原始sn-p

<ul class="navbar-nav">
   <li class="nav-item">
      <a href="~/home/index">Home</a> |
...

//修改

<ul class="navbar-nav">
  <li class="nav-item">
     <a href="~/home/index" class="nav-link">Home</a> |
   ...

正如@Derrick Rose 建议的那样,如果您使用.net core 甚至.netframework 和MVC,那么您肯定会用&lt;a&gt; 标签来做这件事。
&lt;a asp-controller="home" asp-action="Index" class="nav-link"&gt;Home&lt;/a&gt;| 看起来更好...

   <li>@Html.ActionLink("Novels", "Index", "BooksAndStories", new { novel = true }, htmlAttributes: null)</li>

变成

  <li><a asp-action="Index" class="nav-link" asp-controller="BooksAndStories" asp-route-novel="true">Novels</a></li>

【讨论】:

    猜你喜欢
    • 2017-11-26
    • 1970-01-01
    • 2019-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-19
    • 1970-01-01
    • 2019-06-18
    相关资源
    最近更新 更多