精品久久久久久亚洲精品_成人午夜网站_www日本高清_亚洲精品久久久久午夜福

第12節 Bootstrap5導航和選項卡組件用法

On this page

12.1 導航基礎

導航欄是網站系統必須的功能,以前為了做好一個導航欄,需要花很多的功夫,現在有了 Bootstrap5導航,從此做一個漂亮的導航欄,只是片刻功夫復制粘貼就可以完成。

<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="keywords" content="">
    <meta name="description" content="">
    <link href="bootstrap5/bootstrap.min.css" rel="stylesheet">
    <title>導航演示</title>
  </head>
  <body>
        <div>
            <ul>
                <li>
                <a class="nav-link href="#">首頁</a>
                </li>
                <li>
                <a href="#">文章</a>
                </li>
                <li>
                <a href="#">圖片</a>
                </li>
                <li>
                <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">視頻</a>
                </li>
                </ul>
        </div>
   
     <script src="bootstrap5/bootstrap.bundle.min.js" ></script>
  </body>
</html>

你還可以讓你的代碼更簡潔

<nav class="nav">
  <a class="nav-link" href="#">首頁</a>
  <a class="nav-link" href="#">文章</a>
  <a class="nav-link" href="#">圖片</a>
  <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">視頻</a>
</nav>

這段代碼顯示的與上面是一樣的,至于里面的不可用按鈕,除非出于某種特殊目的(例如會員可用,對普通人顯示不可用),否則沒必要放在菜單處。

這兩種寫法各有優點;

  • 第一種更有條理一點,在導航中有其他修飾元素,如圖標等的時候,更加清晰,另外還可以通過寫li的樣式類來更改鏈接顯示方式,甚至在有些公司,會通過代碼量來考核員工的工作績效(聽說不少公司這樣干)。

  • 第二種則更為簡潔,第二種能實現的,第一種都能,反之不成立,畢竟lite版都是閹割了一些功能的。

  • 后面的演示我就用第二種,所有的演示換成第一種都是完全沒問題的。

12.2 常用樣式

12.2.1 水平對齊

使用彈性盒子通用類可以輕松更改導航的水平對齊方式。 默認情況下導航會向左對齊,您可以輕松地將其更改為居中或向右對齊。

  • 使用.justify-content-center居中對齊:

  • 使用.justify-content-end靠右對齊:

<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="keywords" content="">
    <meta name="description" content="">
    <link href="bootstrap5/bootstrap.min.css" rel="stylesheet">
    <title>導航演示</title>
  </head>
  <body>
        <div>
            <nav class="nav justify-content-center">
                <a href="#">首頁</a>
                <a href="#">文章</a>
                <a href="#">圖片</a>
                <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">視頻</a>
            </nav>

            <nav class="nav justify-content-end">
                <a href="#">首頁</a>
                <a href="#">文章</a>
                <a href="#">圖片</a>
                <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">視頻</a>
            </nav>
        </div>
   
     <script src="bootstrap5/bootstrap.bundle.min.js" ></script>
  </body>
</html>

您可能還看出了,一個頁面中可以放置多個導航。

12.2.2 垂直導航

通過使用.flex-column通用類更改導航為垂直導航。如果只希望在特定的viewports下堆疊,可使用響應式版本(例如.flex-sm-column)。


<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="keywords" content="">
    <meta name="description" content="">
    <link href="bootstrap5/bootstrap.min.css" rel="stylesheet">
    <title>導航演示</title>
  </head>
  <body>
        <div>
            <nav class="nav flex-column">
                <a href="#">首頁</a>
                <a href="#">文章</a>
                <a href="#">圖片</a>
                <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">視頻</a>
            </nav>

            <nav class="nav flex-sm-column">
                <a href="#">首頁</a>
                <a href="#">文章</a>
                <a href="#">圖片</a>
                <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">視頻</a>
            </nav>
        </div>
   
     <script src="bootstrap5/bootstrap.bundle.min.js" ></script>
  </body>
</html>

Image 3.png

ps:這個響應是當大于斷點的時候垂直,因為垂直導航一般用于二級導航或者頁內導航,屏幕太小的話,垂直導航占用了閱讀空間,所以劇不用了。如果你想屏幕變小后可以隱藏水平導航的功能,下一章的導航工具條會具體介紹。

12.2.3 選項卡樣式

使用基本的導航,并加入.nav-tabs以生成具有分頁標簽的界面。透過后面“選項卡使用”中的分頁JavaScript插件來創造可切換的塊。 選項卡樣式很簡單,要想實現具體功能,后面會詳細介紹,后面也有詳細代碼。

Image 5.png

12.2.4 膠囊

膠囊使用和選項卡相同,但使用.nav-pills取代nav-tabs:


<ul class="nav nav-pills">

Image 7.png

12.2.5 填充并對齊

.nav內容有兩種寬度擴展用的Class,使用.nav-fill會將.nav-item內容按照比例分配空間。注意,這會占用所有的水平空間,但并不是每個導航項目都具有相同寬度。

創建等寬元素請使用.nav-justified。所有的水平空間將被導航連接占據,但與上面的.nav-fill不同,每個導航項都將是相同的寬度。


 <ul class="nav nav-pills nav-fill">
                <li class="nav-item">
                <a class="nav-link href="#">首頁</a>
                </li>
                <li class="nav-item">
                <a class="nav-link active" aria-current="page" href="#">文章</a>
                </li>
                <li class="nav-item">
                <a class="nav-link" href="#">圖片</a>
                </li>
                <li class="nav-item">
                <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">只有會員可以觀看的視頻視頻</a>
                </li>
            </ul>

            <br><br>

            <ul class="nav nav-pills nav-justified">
                <li class="nav-item">
                <a class="nav-link href="#">首頁</a>
                </li>
                <li class="nav-item">
                <a class="nav-link active" aria-current="page" href="#">文章</a>
                </li>
                <li class="nav-item">
                <a class="nav-link" href="#">圖片</a>
                </li>
                <li class="nav-item">
                <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">只有會員可以觀看的視頻視頻</a>
                </li>
            </ul>

Image 8.png

大家可以對比一下兩種對齊的區別。

12.3 導航組件的進一步擴展

12.3.1 使用彈性盒子實用類

如果需要響應式的導航變化,請使用一系列彈性盒子通用類。這些通用類在斷點之間提供更多的自定義設定。在下面的示例中,我們的導航將在最小斷點以下堆疊,并從small斷點開始采用水平排版以填滿所有可用寬度。


<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="keywords" content="">
    <meta name="description" content="">
    <link href="bootstrap5/bootstrap.min.css" rel="stylesheet">
    <title>導航演示</title>
  </head>
  <body>
      <br><br>
        <div>
            <nav class="nav nav-pills flex-column flex-sm-row">
                <a class="flex-sm-fill text-sm-center nav-link active" aria-current="page" href="#">Active</a>
                <a class="flex-sm-fill text-sm-center nav-link" href="#">Longer nav link</a>
                <a class="flex-sm-fill text-sm-center nav-link" href="#">Link</a>
                <a class="flex-sm-fill text-sm-center nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
                </nav>
        </div>
   
     <script src="bootstrap5/bootstrap.bundle.min.js" ></script>
  </body>
</html>

不同瀏覽器寬度下的顯示。

Image 9.png

Image 10.png

12.3.2 使用下拉列表

加入額外的HTML和下拉菜單JavaScript插件

帶下拉列表的選項卡


<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="keywords" content="">
    <meta name="description" content="">
    <link href="bootstrap5/bootstrap.min.css" rel="stylesheet">
    <title>導航演示</title>
  </head>
  <body>
        <div>
            <br><br><br>
            <ul class="nav nav-tabs">
                <li>
                <a class="nav-link active" aria-current="page" href="#">Active</a>
                </li>
                <li class="nav-item dropdown">
                <a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#" role="button" aria-expanded="false">Dropdown</a>
                <ul>
                <li><a href="#">Action</a></li>
                <li><a href="#">Another action</a></li>
                <li><a href="#">Something else here</a></li>
                <li><hr></li>
                <li><a href="#">Separated link</a></li>
                </ul>
                </li>
                <li>
                <a href="#">Link</a>
                </li>
                <li>
                <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a>
                </li>
                </ul>
     <script src="bootstrap5/bootstrap.bundle.min.js" ></script>
  </body>
</html>

Image 11.png

帶下拉列表的膠囊只需要將nav-tabs換成nav-pills

<ul class="nav nav-pills">


Image 12.png

12.4 使用選項卡

12.4.1 普通選項卡

前面的選項卡只有樣式,是不起作用的。其實bootstrap已經為我們寫好js代碼,他們都在bootstrap.bundle.min.js中了。


<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="keywords" content="">
    <meta name="description" content="">
    <link href="bootstrap5/bootstrap.min.css" rel="stylesheet">
    <title>導航演示</title>
  </head>
  <body>
      <br><br>
        <div>
            <ul class="nav nav-tabs" id="myTab" role="tablist">
                <li role="presentation">
                <button class="nav-link active" id="home-tab" data-bs-toggle="tab" data-bs-target="#home" type="button" role="tab" aria-controls="home" aria-selected="true">首頁</button>
                </li>
                <li role="presentation">
                <button id="profile-tab" data-bs-toggle="tab" data-bs-target="#profile" type="button" role="tab" aria-controls="profile" aria-selected="false">資料</button>
                </li>
                <li role="presentation">
                <button id="contact-tab" data-bs-toggle="tab" data-bs-target="#contact" type="button" role="tab" aria-controls="contact" aria-selected="false">聯系方式</button>
                </li>
                </ul>

                <div id="myTabContent">

                    <div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">
                        <h1>首頁內容</h1>
                        這里可以放文字、列表等一切頁面元素
                    </div>
                    <div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab">
                        <h1>個人資料</h1>
                        這里可以放文字、列表等一切頁面元素
                    </div>
                    <div class="tab-pane fade" id="contact" role="tabpanel" aria-labelledby="contact-tab">
                        <h1>聯系方式</h1>
                        這里可以放文字、列表等一切頁面元素
                    </div>
                </div>
        </div>
   
     <script src="bootstrap5/bootstrap.bundle.min.js" ></script>
  </body>
</html>

Image 13.png

12.4.2 膠囊選項卡

跟前面膠囊一樣,只是換一個標簽這么簡單。

<ul class="nav nav-pills" id="myTab" role="tablist">


Image 14.png

12.4.3 垂直膠囊選項卡

這個段代碼把普通鏈接改成了按鈕,其實也是一樣的,看著貌似很復雜,其實只需要復制進去,修改一下你要的地方就好了。

需要注意的是,垂直標簽的內容顯示在右側(當然也可以菜單在右邊,內容在左邊),所以在布局的時候跟前面不太一樣。


<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="keywords" content="">
    <meta name="description" content="">
    <link href="bootstrap5/bootstrap.min.css" rel="stylesheet">
    <title>導航演示</title>
  </head>
  <body>
      <br><br>
        <div>
            <div class="d-flex align-items-start">
                <div class="nav flex-column nav-pills me-3" id="v-pills-tab" role="tablist" aria-orientation="vertical">
                <button class="nav-link active" id="v-pills-home-tab" data-bs-toggle="pill" data-bs-target="#v-pills-home" type="button" role="tab" aria-controls="v-pills-home" aria-selected="true">首頁</button>
                <button id="v-pills-profile-tab" data-bs-toggle="pill" data-bs-target="#v-pills-profile" type="button" role="tab" aria-controls="v-pills-profile" aria-selected="false">資料</button>
                <button id="v-pills-messages-tab" data-bs-toggle="pill" data-bs-target="#v-pills-messages" type="button" role="tab" aria-controls="v-pills-messages" aria-selected="false">信息</button>
                </div>

                <div id="v-pills-tabContent">

                    <div class="tab-pane fade show active" id="v-pills-home" role="tabpanel" aria-labelledby="v-pills-home-tab">
                        <h1>首頁內容</h1>
                        這里可以放文字、列表等一切頁面元素
                    </div>
                    <div class="tab-pane fade" id="v-pills-profile" role="tabpanel" aria-labelledby="v-pills-profile-tab">
                        <h1>個人資料</h1>
                        這里可以放文字、列表等一切頁面元素
                    </div>
                    <div class="tab-pane fade" id="v-pills-messages" role="tabpanel" aria-labelledby="v-pills-messages-tab">
                        <h1>聯系方式</h1>
                        這里可以放文字、列表等一切頁面元素
                    </div>
               
            </div>
            </div>

        </div>
   
     <script src="bootstrap5/bootstrap.bundle.min.js" ></script>
  </body>
</html>

Image 15.png

12.4.4 淡入淡出效果

要使選項卡或菜單淡入淡出,請將.fade加到每個.tab-pane分頁中。第一個分頁內容還必須具有.show以使初始內容可見。事實上上面已經用了淡入淡出效果,試著去掉tab-pane中的fade,看一下效果。

到此導航就介紹完了,手冊的內容比我寫的要多,看起來復雜,實際上掌握這些知識已經走夠用了。請關注我,及時學習 俺老劉原創的《Bootstrap5零基礎到精通》第13節 Bootstrap5組件-導航工具條用法,導航工具條導航工具條跟導航差不多,但是其功能更加復雜,還涉及到移動響應等。


返回頂部
精品久久久久久亚洲精品_成人午夜网站_www日本高清_亚洲精品久久久久午夜福

      国产欧美日韩专区发布| 久久午夜激情| 精品动漫一区二区| 欧美日韩国内自拍| 久久久久久久一区| 一区二区久久久久久| 伊人久久综合| 国产手机视频一区二区| 欧美日韩在线观看一区二区| 久久综合中文色婷婷| 一区二区三区视频观看| 亚洲精品一区二区三区婷婷月 | 国产美女精品一区二区三区| 久久综合狠狠综合久久激情| 欧美一区二区三区视频在线| 亚洲视频导航| a4yy欧美一区二区三区| 亚洲二区精品| 伊人久久亚洲影院| 国产在线播放一区二区三区| 国产精品亚洲综合一区在线观看| 欧美日本成人| 欧美日产一区二区三区在线观看 | 国产手机视频一区二区| 国产精品美女久久久浪潮软件| 欧美久久九九| 欧美日韩p片| 欧美美女操人视频| 欧美激情一区| 欧美日韩一区二区精品| 欧美日韩视频在线| 国产精品av免费在线观看| 欧美日韩亚洲不卡| 国产精品毛片一区二区三区| 国产精品户外野外| 国产亚洲毛片在线| 狠狠综合久久| 亚洲欧洲一区| 一本色道久久99精品综合| 一区二区三区国产精品| 午夜精品美女自拍福到在线| 亚洲婷婷在线| 久久久国产91| 欧美久久久久久| 欧美网站在线观看| 国产午夜精品理论片a级探花| 国产一区二区精品久久91| 在线欧美不卡| 日韩小视频在线观看专区| 亚洲一区二区三区在线| 久久国产精品久久久久久| 麻豆精品在线观看| 欧美特黄一级大片| 国产视频亚洲精品| 日韩视频在线观看国产| 亚洲男女自偷自拍图片另类| 久久久一本精品99久久精品66| 蜜桃av一区二区| 国产精品久久久久久久久借妻 | 久久一区二区三区国产精品| 欧美电影美腿模特1979在线看| 欧美日韩一区视频| 狠狠色狠狠色综合日日小说| 日韩午夜黄色| 久久婷婷综合激情| 国产精品视频久久一区| 亚洲国语精品自产拍在线观看| 制服丝袜亚洲播放| 久久夜色精品| 国产精品久在线观看| 亚洲日本aⅴ片在线观看香蕉| 午夜亚洲影视| 欧美视频二区| 亚洲精品一区二区三区蜜桃久| 先锋影音久久久| 欧美色网一区二区| 在线观看亚洲精品| 久久av免费一区| 国产精品视频导航| 一区二区三区久久网| 欧美国产激情| 亚洲福利视频网站| 欧美在线一二三区| 国产女人精品视频| 亚洲欧美日韩国产精品| 欧美日韩国产区一| 亚洲精品免费一二三区| 久久视频在线看| 一区二区三区中文在线观看| 欧美一区二区三区在线看 | 亚洲最快最全在线视频| 欧美精品午夜视频| 亚洲日本欧美天堂| 老**午夜毛片一区二区三区| 狠狠色丁香婷婷综合| 久久精品国产91精品亚洲| 国产欧美精品日韩区二区麻豆天美 | 欧美成年人视频网站| 怡红院av一区二区三区| 久久精品中文字幕免费mv| 国产一区二区三区四区hd| 性欧美精品高清| 国产亚洲精品久久久久动| 久久精品国产96久久久香蕉| 国产亚洲精品福利| 久久久久久久性| 亚洲国产精品成人一区二区 | 亚洲电影在线看| 老司机精品久久| 亚洲国产老妈| 欧美视频在线视频| 欧美一区国产一区| 雨宫琴音一区二区在线| 欧美大尺度在线观看| 亚洲毛片在线| 国产精品美女久久久久久免费| 欧美一区成人| 亚洲精品国产品国语在线app| 欧美日本韩国一区| 欧美在线观看视频| 亚洲国产成人精品女人久久久 | 日韩一级片网址| 国产精品扒开腿做爽爽爽视频| 亚洲制服少妇| 亚洲大胆人体视频| 欧美视频中文字幕| 久久久久高清| 亚洲永久精品国产| 亚洲第一精品夜夜躁人人爽| 欧美巨乳在线观看| 久久国内精品自在自线400部| 亚洲国产精品v| 国产精品久久一区主播| 玖玖玖国产精品| 亚洲一区二区精品在线| 亚洲电影第1页| 国产精品一区二区三区免费观看| 美女精品在线观看| 香蕉久久一区二区不卡无毒影院 | 欧美电影打屁股sp| 欧美亚洲网站| 亚洲图片欧美日产| 亚洲人线精品午夜| 精品盗摄一区二区三区| 国产精品资源| 欧美日韩免费一区| 免费久久精品视频| 久久国产精品色婷婷| 亚洲在线国产日韩欧美| 日韩午夜在线视频| 亚洲国产成人不卡| 狠狠色狠狠色综合人人| 国产美女搞久久| 国产精品激情偷乱一区二区∴| 欧美精品成人91久久久久久久| 欧美自拍偷拍| 久久国产精品网站| 亚洲女同精品视频| 亚洲一区二区三区乱码aⅴ| 日韩西西人体444www| 91久久在线播放| 亚洲国产精品一区二区第四页av | 久久一区激情| 久久精品九九| 久久免费高清| 久久天堂成人| 久久在线精品| 欧美电影资源| 欧美激情亚洲| 欧美日韩一区二区三| 欧美精品免费播放| 欧美日韩在线播放三区| 欧美亚男人的天堂| 国产精品国产三级国产专播精品人 | 欧美日韩亚洲国产一区| 欧美日韩在线视频一区二区| 欧美三级韩国三级日本三斤| 国产精品久久久99| 国产精品婷婷午夜在线观看| 国产精品视频999| 国语精品中文字幕| 影院欧美亚洲| 亚洲巨乳在线| 性色av一区二区三区红粉影视| 欧美一区亚洲一区| 久热成人在线视频| 欧美日韩精品高清| 国产亚洲激情视频在线| 在线观看日韩av电影| 99国内精品久久久久久久软件| 一区二区三区日韩欧美精品| 亚洲性视频h| 快射av在线播放一区| 欧美日韩一区二区三区免费| 国产丝袜一区二区| 亚洲人被黑人高潮完整版| 亚洲欧美不卡| 欧美成人一区二区三区片免费| 国产精品极品美女粉嫩高清在线 | 久久久久久尹人网香蕉|