Bootstrap 2 导航条

Bootstrap 内置了导航条模块,本节我们将会学习如何使用 Bootstrap 创建导航条

Bootstrap 2 导航条

Bootstrap 2 nav bar demo

Bootstrap .navbar CSS 类用于创建一个导航条

可以使用 .navbar-fixed-top CSS 类将导航条固定在头部

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

运行范例 »

添加导航集合

然后我们就可以使用 .nav CSS 类添加一个导航集合

.active CSS 类用于将一个导航项设置为当前项

<div class="navbar navbar-fixed-top">
    <div class="navbar-inner">
        <div class="container">
            <ul class="nav">
                <li class="active">
                    <a href="#">简单教程</a>
                </li>
                <li><a href="#">HTML5</a></li>
                <li><a href="#">CSS3</a></li>
                <li><a href="#">Bootstrap</a></li>
            </ul>
        </div>
    </div>
</div>

运行范例 »

运行后效果图如下

Bootstrap 2 nav bar demo

创建下拉菜单

可以将一个导航菜单项设置为下拉菜单,就像创建下拉菜单一样

<div class="navbar navbar-fixed-top">
    <div class="navbar-inner">
        <div class="container">
            <ul class="nav">
                <li class="active">
                    <a href="#">简单教程</a>
                </li>
                <li><a href="#">HTML5</a></li>
                <li><a href="#">CSS3</a></li>
                <li><a href="#">jQuery</a></li>
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
                        Bootstrap
                        <b class="caret"></b>
                    </a>
                    <ul class="dropdown-menu">
                        <li><a href="#">Bootstrap 2 </a></li>
                        <li><a href="#">Bootstrap 3</a></li>
                        <li><a href="#">Bootstrap 4</a></li>
                    </ul>
                </li>
            </ul>
        </div>
    </div>
</div>

因为 Bootstrap 下拉菜单需要用到 JavaScript,所以需要在 HTML 页面中插入下面几行代码

<script src="/static/lib/bootstrap/2.3.2/docs/assets/js/jquery.js"></script>
<script src="/static/lib/bootstrap/2.3.2/docs/assets/js/bootstrap.min.js"></script>
<script>$(document).ready(function () {$('.dropdown-toggle').dropdown();});</script>

运行范例 »

运行后效果图如下

Bootstrap 2 nav bar demo

添加搜索表单

如果要向导航条中插入一个搜索表单,只需在包含下拉菜单列表的 <ul> 后插入下面的代码

.pull-left 是靠左对齐搜索表单,如果您想要靠右对齐,请使用 ".pull-right"

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

运行范例 »

运行后效果图如下

Bootstrap 2 nav bar demo

插入交互按钮

如果想在导航条右部中插入交互按钮,比如 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"><!-- 将这个标签放置在要渲染的+ 1按钮的位置 -->
                <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>

CSS

然后添加以下样式 .socials

.socials 不是 bootstrap.css 的一部分,主要用于让所有的交互按钮都居中对齐

.socials {padding: 10px;}

JavaScript

最后需要插入两块代码: 一个用于 Facebook 按钮,另一个用于 Google Plus

这些是由 Facebook 和 Google 提供的用于动态插入按钮到您的页面中

所以,在 body 的开始标签后面,插入下面代码,这个是用于 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 的结束标签前面,插入下面代码,这个是用于 Google Plus

<script>
    (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 htm>
<meta charset="utf-8"> 
<link href="https://cdn.bootcss.com/bootstrap/2.3.2/css/bootstrap.min.css" rel="stylesheet">
<style>.socials { padding: 10px;}</style>
<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" style="width:auto">
            <ul class="nav">
                <li class="active">
                    <a href="#">简单教程</a>
                </li>
                <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown">
                        Bootstrap
                        <b class="caret"></b>
                    </a>
                    <ul class="dropdown-menu">
                        <li><a href="#">Bootstrap 2 </a></li>
                        <li><a href="#">Bootstrap 3</a></li>
                        <li><a href="#">Bootstrap 4</a></li>
                    </ul>
                </li>
            </ul>
            <form class="navbar-search pull-left">
                <input type="text" class="search-query" placeholder="搜索">
            </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"><!-- 将这个标签放置在要渲染的+ 1按钮的位置 -->
                            <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="/static/lib/bootstrap/2.3.2/docs/assets/js/jquery.js"></script>
<script src="/static/lib/bootstrap/2.3.2/docs/assets/js/bootstrap.min.js"></script>
<script>$(document).ready(function () {$('.dropdown-toggle').dropdown();});</script>
<script>
    (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>

运行范例 »

Bootstrap 2 nav bar demo

需要在 body 的开始标签后添加一个 40px 的填充(padding) 并把它添加在核心 Bootstrap CSS 之后,可选的响应式 CSS 之前

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.