简体   繁体   English

导航栏是垂直的,而不是水平的

[英]navbar is vertical instead of horizontal

 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/css/bootstrap.min.css"> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/js/bootstrap.min.js"></script> <div id="navigation"> <nav class="navbar navbar-default"> <ul class="nav navbar-nav"> <li class="nav-item"><a class="nav-link" href="/">Home</a></li> <li class="nav-item"><a class="nav-link" href="/browse">Browse</a></li> <li class="nav-item"><a class="nav-link" href="/create">Create</a></li> <li class="nav-item"><a class="nav-link" href="/review">Review</a></li> <li class="nav-item"><a class="nav-link" href="/help">Help</a></li> </ul> <form class="form-inline"> <a href="#" onclick="signOut();">Sign out</a> <div id="my-signin2"> <!-- google oauth stuff --> </div> </form> </nav> </div> 

Why does this show a vertical list instead of a horizontal one? 为什么显示一个垂直列表而不是水平列表?

I removed the navbar-nav class and it's horizontal again. 我删除了navbar-nav类,它再次navbar-nav水平。 My best guess is that the navbar-nav class has some css associated with it that was overwriting the navbar-default styles. 我最好的猜测是navbar-nav类具有一些与之关联的CSS,这些CSS会覆盖navbar-default样式。

 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/js/bootstrap.min.js"></script> <div id="navigation"> <nav class="navbar navbar-default"> <ul class="nav"> <li class="nav-item"><a class="nav-link" href="/">Home</a></li> <li class="nav-item"><a class="nav-link" href="/browse">Browse</a></li> <li class="nav-item"><a class="nav-link" href="/create">Create</a></li> <li class="nav-item"><a class="nav-link" href="/review">Review</a></li> <li class="nav-item"><a class="nav-link" href="/help">Help</a></li> </ul> <form class="form-inline"> <a href="#" onclick="signOut();">Sign out</a> <div id="my-signin2"> <!-- google oauth stuff --> </div> </form> </nav> </div> 

You didn't include Jquery <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> and make sure to wrap your navbar ul in a container-fluid as demonstrated. 您没有包括Jquery <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> ,并确保将导航栏ul包装起来如图所示在容器流体中。 This way when resized it will be responsive and get vertically aligned for small viewports : 这样,在调整大小时,它会响应并在小视口中垂直对齐:

 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> <div id="navigation"> <nav class="navbar navbar-default"> <div class="container-fluid"> <ul class="nav navbar-nav"> <li class="nav-item"><a class="nav-link" href="/">Home</a></li> <li class="nav-item"><a class="nav-link" href="/browse">Browse</a></li> <li class="nav-item"><a class="nav-link" href="/create">Create</a></li> <li class="nav-item"><a class="nav-link" href="/review">Review</a></li> <li class="nav-item"><a class="nav-link" href="/help">Help</a></li> </ul> <form class="form-inline"> <a href="#" onclick="signOut();">Sign out</a> <div id="my-signin2"> <!-- google oauth stuff --> </div> </form> </div> </nav> </div> 

You can Remove the Background. 您可以删除背景。

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/js/bootstrap.min.js"></script>
<div id="menu-outer">
<div id="table">
   <nav class="navbar navbar-default horizontal-list">
      <ul class="nav navbar-nav">
         <li class="nav-item"><a class="nav-link" href="/">Home</a></li>
         <li class="nav-item"><a class="nav-link" href="/browse">Browse</a></li>
         <li class="nav-item"><a class="nav-link" href="/create">Create</a></li>
         <li class="nav-item"><a class="nav-link" href="/review">Review</a></li>
         <li class="nav-item"><a class="nav-link" href="/help">Help</a></li>
      </ul>
      <form class="form-inline">
         <a href="#" onclick="signOut();">Sign out</a>
         <div id="my-signin2">
            <!-- google oauth stuff -->
         </div>
      </form>
   </nav>
</div>
</div>

<style>
    #menu-outer {
    height: 84px;
    background: url(images/bar-bg.jpg) repeat-x;
}

.table {
    display: table;   /* Allow the centering to work */
    margin: 0 auto;
}

ul#horizontal-list {
    min-width: 696px;
    list-style: none;
    padding-top: 20px;
    }
    ul#horizontal-list li {
        display: inline;
    }
</style>

From what I see your issue is that lists are lists, ul and li will make vertical lists. 从我的角度来看,您的问题是列表是列表,ul和li将构成垂直列表。 If you want horizontal you need some css, or some style. 如果要水平放置,则需要一些CSS或某种样式。

Try adding something like this: 尝试添加如下内容:

<html>
<head>
<style>
ul li {
    display:inline;
}
</style>
</head>
<body>

<link rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-    beta.2/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-    beta.2/js/bootstrap.min.js"></script>
<div id="navigation">
   <nav class="navbar navbar-default">
  <ul class="nav navbar-nav">
     <li class="nav-item"><a class="nav-link" href="/">Home</a></li>
     <li class="nav-item"><a class="nav-link" href="/browse">Browse</a></li>
     <li class="nav-item"><a class="nav-link" href="/create">Create</a></li>
     <li class="nav-item"><a class="nav-link" href="/review">Review</a></li>
     <li class="nav-item"><a class="nav-link" href="/help">Help</a></li>
  </ul>
  <form class="form-inline">
     <a href="#" onclick="signOut();">Sign out</a>
     <div id="my-signin2">
        <!-- google oauth stuff -->
     </div>
  </form>
  </nav>
  </div>
  </body>
</html>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM