Bootstrap 導(dǎo)航條

2018-11-08 15:27 更新

Bootstrap 導(dǎo)航條

簡(jiǎn)介

使用 Bootstrap,您可以創(chuàng)建靜態(tài)的導(dǎo)航條。在本教程中將教您如何做到這點(diǎn)。

我們將使用一個(gè)帶有內(nèi)容的 HTML5 頁(yè)面,并看看如何添加一個(gè)頭部導(dǎo)航條。下面是最后的輸出結(jié)果:

navbar demo

下面是不帶任何內(nèi)容的頁(yè)面的 HTML5 代碼。

  <!DOCTYPE html> 
  <html lang=&quot;en&quot;> 
  <head> 
  <meta charset=&quot;utf-8&quot;> 
  <title>Bootstrap Basic Tab Based Navigation Example</title> 
  <meta name=&quot;description&quot; content=&quot;Bootstrap Basic Tab Based Navigation Example&quot;>
  <link href=&quot;../bootstrap/twitter-bootstrap-v2/docs/assets/css/bootstrap.css&quot; rel=&quot;stylesheet&quot;> 
  </head>
  <body>
  <!-- We will create navbar here -->		
  </body>
  </html> 

為了創(chuàng)建包含導(dǎo)航的基本結(jié)構(gòu),您需要在上面顯示的 HTML5 代碼中,緊跟著 標(biāo)簽的后邊插入下面的代碼:

<div class="navbar navbar-fixed-top">
  <div class="navbar-inner">
    <div class="container">
	<!--navigation does here-->
    </div>
  </div>
</div> 

現(xiàn)在,讓我們把 替換為下面的代碼,用來(lái)創(chuàng)建導(dǎo)航的第一個(gè)集合。請(qǐng)注意,這里的 "brand" class 以不同的方式呈現(xiàn),這可以用來(lái)呈現(xiàn)您的公司名稱(chēng)或組織名稱(chēng)。

<ul class="nav">
  <li class="active">
    <a class="brand" href="#">w3cschool</a>
  </li>
  <li><a href="#">About</a></li>
  <li><a href="#">Portfolio</a></li>
  <li><a href="#">Contact</a></li>
</ul>

如果需要?jiǎng)?chuàng)建下拉菜單,需要緊跟著在最后一個(gè)代碼塊中顯示的 HTML 代碼后,插入下面的代碼。

<ul class="nav">
  <li class="dropdown">
    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
          Services
          <b class="caret"></b>
    </a>
    <ul class="dropdown-menu">
     <li><a href="#">Web Design</a></li>
  <li><a href="#">Web development</a></li>
  <li><a href="#">Wordpress Theme development</a></li>
    </ul>
  </li>
</ul>

但是,由于 Bootstrap 下拉菜單需要用到 JavaScript,所以您需要在 HTML 頁(yè)面中插入下面兩行代碼。您可以把它們插入到 標(biāo)簽前面。

<script src="../bootstrap/twitter-bootstrap-v2/docs/assets/js/jquery.js"></script>
<script src="../bootstrap/twitter-bootstrap-v2/docs/assets/js/bootstrap-dropdown.js"></script>

如果要向?qū)Ш綏l中插入一個(gè)搜索表單,只需在包含下拉菜單列表的 <ul> 后,插入下面的代碼。請(qǐng)注意,class "pull-left" 是靠左對(duì)齊搜索表單。如果您想要靠右對(duì)齊,請(qǐng)使用 "pull-right" class。

<form class="navbar-search pull-left">
  <input type="text" class="search-query" placeholder="Search">
</form>

現(xiàn)在,我們想要項(xiàng)導(dǎo)航條中插入交互按鈕,位于導(dǎo)航條的右部。我們將插入 Google Plus、Facebook Like 和 Tweet 按鈕。您需要在搜索表單的后邊插入下面的代碼。

<ul class="nav pull-right">
  <li class="dropdown">
    <a href="#"           class="dropdown-toggle"           data-toggle="dropdown">
          Social
          <b class="caret"></b>
    </a>
    <ul class="dropdown-menu">
     <li class="socials"><!-- Place this tag where you want the +1 button to render -->
<g:plusone annotation="inline" width="150"></g:plusone>
</li>
  <li class="socials"><div class="fb-like" data-send="false" data-width="150" data-show-faces="true"></div></li>
  <li class="socials"><a href="https://twitter.com/share" class="twitter-share-button">Tweet</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script></li>
    </ul>
  </li>
</ul>

class "socials" 不是 bootstrap.css 的一部分。由于我們想要讓所有的交互按鈕都居中對(duì)齊,所以我們需要通過(guò)它創(chuàng)建一些填充(padding)。代碼如下:

.socials {
padding: 10px;
}

您可以把它直接寫(xiě)在頁(yè)面上,用 和 包圍起來(lái),也可以把它添加到外部的 CSS 文件,然后進(jìn)行引用。

最后您需要插入兩塊代碼。一個(gè)用于 Facebook 按鈕,另一個(gè)用于 Google Plus。這些是由 Facebook 和 Google 提供的用于動(dòng)態(tài)插入按鈕到您的頁(yè)面中。

所以,在 body 的開(kāi)始標(biāo)簽后面,插入下面代碼,這個(gè)是用于 Facebook

<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

然后在 body 的結(jié)束標(biāo)簽前面,插入下面代碼,這個(gè)是用于 Google Plus

<script type="text/javascript">
  (function() {
    var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
    po.src = 'https://apis.google.com/js/plusone.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  })();
</script>

下面是最后的代碼

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<meta charset="utf-8"> 
<title>Bootstrap navbar Example</title> 
<meta name="description" content="Bootstrap navbar Example">
<link href="../bootstrap/twitter-bootstrap-v2/docs/assets/css/bootstrap.css" rel="stylesheet"> 
<style type="text/css">
.socials {
padding: 10px;
}
</style>
</head>
<body>
<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<div class="navbar navbar-fixed-top">
  <div class="navbar-inner">
    <div class="container">
	<ul class="nav">
  <li class="active">
    <a class="brand" href="#">w3cschool</a>
  </li>
  <li><a href="#">About</a></li>
  <li><a href="#">Portfolio</a></li>
  <li><a href="#">Contact</a></li>
</ul>
<ul class="nav">
  <li class="dropdown">
    <a href="#"           class="dropdown-toggle"           data-toggle="dropdown">
          Services
          <b class="caret"></b>
    </a>
    <ul class="dropdown-menu">
     <li><a href="#">Web Design</a></li>
  <li><a href="#">Web development</a></li>
  <li><a href="#">Wordpress Theme development</a></li>
    </ul>
  </li>
</ul>
<form class="navbar-search pull-left">
  <input type="text" class="search-query" placeholder="Search">
</form>
<ul class="nav pull-right">
  <li class="dropdown">
    <a href="#"           class="dropdown-toggle"           data-toggle="dropdown">
          Social
          <b class="caret"></b>
    </a>
    <ul class="dropdown-menu">
     <li class="socials"><!-- Place this tag where you want the +1 button to render -->
<g:plusone annotation="inline" width="150"></g:plusone>
</li>
  <li class="socials"><div class="fb-like" data-send="false" data-width="150" data-show-faces="true"></div></li>
  <li class="socials"><a href="https://twitter.com/share" class="twitter-share-button">Tweet</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script></li>
    </ul>
  </li>
</ul>
    </div>
  </div>
</div>
<script src="../bootstrap/twitter-bootstrap-v2/docs/assets/js/jquery.js"></script>
<script src="../bootstrap/twitter-bootstrap-v2/docs/assets/js/bootstrap-dropdown.js"></script>
<script type="text/javascript">
  (function() {
    var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
    po.src = 'https://apis.google.com/js/plusone.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  })();
</script>
</body>
</html> 

點(diǎn)擊這里,在線(xiàn)查看實(shí)例。

請(qǐng)注意,您需要在 body 的開(kāi)始標(biāo)簽后添加一個(gè) 40px 的填充(padding)。并把它添加在核心 Bootstrap CSS 之后,可選的響應(yīng)式 CSS 之前。

Bootstrap 也允許您創(chuàng)建響應(yīng)式的導(dǎo)航條。下面是代碼:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<meta charset="utf-8"> 
<title>Bootstrap navbar with responsive variation Example</title> 
<meta name="description" content="Bootstrap navbar with responsive variation Example">
<link href="../bootstrap/twitter-bootstrap-v2/docs/assets/css/bootstrap.css" rel="stylesheet">
<link href="../bootstrap/twitter-bootstrap-v2/docs/assets/css/bootstrap-responsive.css" rel="stylesheet"> 
</head>
<body>
<div class="navbar">
  <div class="navbar-inner">
    <div class="container">
 
      <!-- .btn-navbar is used as the toggle for collapsed navbar content -->
      <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </a>
 
      <!-- Be sure to leave the brand out there if you want it shown -->
      <a class="brand" href="#">Project name</a>
 
      <!-- Everything you want hidden at 940px or less, place within here -->
      <div class="nav-collapse">
        <!-- .nav, .navbar-search, .navbar-form, etc -->
      </div>
 
    </div>
  </div>
</div>
</body>
</html>

點(diǎn)擊這里,下載本教程中使用到的所有 HTML、CSS、JS 和圖片文件。

以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)