整理關(guān)于Bootstrap導(dǎo)航的慕課筆記
整理自慕課筆記
基礎(chǔ)樣式
導(dǎo)航對于一位前端人員來說并不陌生??梢哉f導(dǎo)航是一個(gè)網(wǎng)站重要的元素組件之一,可以便于用戶查找網(wǎng)站所提供的各項(xiàng)功能服務(wù)。導(dǎo)航的制作方法也是千奇百怪,五花八門。在這一節(jié)中將向大家介紹如何使用Bootstrap框架制作各式各樣的導(dǎo)航。
Bootstrap框架中制作導(dǎo)航條主要通過“.nav”樣式。默認(rèn)的“.nav”樣式不提供默認(rèn)的導(dǎo)航樣式,必須附加另外一個(gè)樣式才會(huì)有效,比如“nav-tabs”、“nav-pills”之類
<ul class="nav nav-tabs"> <li><a href="##">Home</a></li> <li><a href="##">CSS3</a></li> <li><a href="##">Sass</a></li> <li><a href="##">jQuery</a></li> <li><a href="##">Responsive</a></li> </ul>
標(biāo)簽形tab導(dǎo)航
標(biāo)簽形導(dǎo)航,也稱為選項(xiàng)卡導(dǎo)航。特別是在很多內(nèi)容分塊顯示的時(shí),使用這種選項(xiàng)卡來分組十分適合。
標(biāo)簽形導(dǎo)航是通過“nav-tabs”樣式來實(shí)現(xiàn)。在制作標(biāo)簽形導(dǎo)航時(shí)需要在原導(dǎo)航“nav”上追加此類名,如:
<ul class="nav nav-tabs"> <li><a href="##">Home</a></li> <li><a href="##">CSS3</a></li> <li><a href="##">Sass</a></li> <li><a href="##">jQuery</a></li> <li><a href="##">Responsive</a></li> </ul>
一般情況之下,選項(xiàng)卡教會(huì)有一個(gè)當(dāng)前選中項(xiàng)。其實(shí)在Bootstrap框架也相應(yīng)提供了。假設(shè)我們想讓“Home”項(xiàng)為當(dāng)前選中項(xiàng),只需要在其標(biāo)簽上添加類名“class=”active””即可:
<ul class="nav nav-tabs"> <li class="active"><a href="##">Home</a></li> … </ul>
除了當(dāng)前項(xiàng)之外,有的選項(xiàng)卡還帶有禁用狀態(tài),實(shí)現(xiàn)這樣的效果,只需要在標(biāo)簽項(xiàng)上添加“class=”disabled””即可:
<ul class="nav nav-tabs"> <li class="active"><a href="##">Home</a></li> … <li class="disabled"><a href="##">Responsive</a></li> </ul>
注意:我們看到的選項(xiàng)卡效果,點(diǎn)擊菜單項(xiàng)就可以切換內(nèi)容,如果要實(shí)現(xiàn)這樣的效果需要配合js插件,這部分將在后面的教程中會(huì)介紹。
膠囊形(pills)導(dǎo)航
膠囊形(pills)導(dǎo)航聽起來有點(diǎn)別扭,因?yàn)槠渫庑慰雌饋碛悬c(diǎn)像膠囊形狀。但其更像我們平時(shí)看到的大眾形導(dǎo)航。當(dāng)前項(xiàng)高亮顯示,并帶有圓角效果。其實(shí)現(xiàn)方法和“nav-tabs”類似,同樣的結(jié)構(gòu),只需要把類名“nav-tabs”換成“nav-pills”即可
<ul class="nav nav-pills"> <li class="active"><a href="##">Home</a></li> <li><a href="##">CSS3</a></li> <li><a href="##">Sass</a></li> <li><a href="##">jQuery</a></li> <li class="disabled"><a href="##">Responsive</a></li> </ul>
垂直堆疊的導(dǎo)航
在實(shí)際運(yùn)用當(dāng)中,除了水平導(dǎo)航之外,還有垂直導(dǎo)航,就類似前面介紹的垂直排列按鈕一樣。制作垂直堆疊導(dǎo)航只需要在“nav-pills”的基礎(chǔ)上添加一個(gè)“nav-stacked”類名即可
<ul class="nav nav-pills nav-stacked"> <li class="active"><a href="##">Home</a></li> <li><a href="##">CSS3</a></li> <li><a href="##">Sass</a></li> <li><a href="##">jQuery</a></li> <li class="disabled"><a href="##">Responsive</a></li> </ul>
垂直堆疊導(dǎo)航與膠囊形導(dǎo)航相比,主要是讓導(dǎo)航項(xiàng)不浮動(dòng),讓其垂直排列,然后給相鄰導(dǎo)航項(xiàng)留有一定的間距。大家是否還記得,在下拉菜單一節(jié)中,下拉菜單組與組之間有一個(gè)分隔線。其實(shí)在垂直堆疊導(dǎo)航也具有這樣的效果,只需要添加在導(dǎo)航項(xiàng)之間添加<li class=”nav-divider”></li>即可:
<ul class="nav nav-pills nav-stacked"> <li class="active"><a href="##">Home</a></li> <li><a href="##">CSS3</a></li> <li><a href="##">Sass</a></li> <li><a href="##">jQuery</a></li> <li class="nav-divider"></li> <li class="disabled"><a href="##">Responsive</a></li> </ul>
或許你會(huì)問,如果我在”nav-tabs”上添加“nav-stacked”是不是也能實(shí)現(xiàn)垂直的標(biāo)簽選項(xiàng)導(dǎo)航呢?答案是:在bootstrap V2.x版本可以,但在Bootstrap V3.x版本將這個(gè)效果取消了,可能作者覺得垂直選擇項(xiàng)并不太常見,也不美觀吧。
自適應(yīng)導(dǎo)航
使用
自適應(yīng)導(dǎo)航指的是導(dǎo)航占據(jù)容器全部寬度,而且菜單項(xiàng)可以像表格的單元格一樣自適應(yīng)寬度。自適應(yīng)導(dǎo)航和前面使用“btn-group-justified”制作的自適應(yīng)按鈕組是一樣的。只不過在制作自適應(yīng)導(dǎo)航時(shí)更換了另一個(gè)類名“nav-justified”。當(dāng)然他需要和“nav-tabs”或者“nav-pills”配合在一起使用。如:
<ul class="nav nav-tabs nav-justified"> <li class="active"><a href="##">Home</a></li> <li><a href="##">CSS3</a></li> <li><a href="##">Sass</a></li> <li><a href="##">jQuery</a></li> <li><a href="##">Responsive</a></li> </ul>
實(shí)現(xiàn)原理
實(shí)現(xiàn)原理并不難,列表<ul>上設(shè)置寬度為“100%”,然后每個(gè)菜單項(xiàng)<li>設(shè)置了“display:table-cell”,讓列表項(xiàng)以模擬表格單元格的形式顯示
導(dǎo)航加下拉菜單(二級導(dǎo)航)
前面介紹的都是使用Bootstrap框架制作一級導(dǎo)航,但很多時(shí)候,在Web頁面中是離不開二級導(dǎo)航的效果。那么在Bootstrap框架中制作二級導(dǎo)航就更容易了。只需要將li當(dāng)作父容器,使用類名“dropdown”,同時(shí)在li中嵌套另一個(gè)列表ul,使用前面介紹下拉菜單的方法就可以:
<ul class="nav nav-pills"> <li class="active"><a href="##">首頁</a></li> <li class="dropdown"> <a href="##" class="dropdown-toggle" data-toggle="dropdown">教程<span class="caret"></span></a> <ul class="dropdown-menu"> <li><a href="##">CSS3</a></li> … </ul> </li> <li><a href="##">關(guān)于我們</a></li> </ul>
面包屑式導(dǎo)航
面包屑(Breadcrumb)一般用于導(dǎo)航,主要是起的作用是告訴用戶現(xiàn)在所處頁面的位置(當(dāng)前位置)。在Bootstrap框架中面包屑也是一個(gè)獨(dú)立模塊組件
使用方法
使用方式就很簡單,為ol加入breadcrumb類:
<ol class="breadcrumb"> <li><a href="#">首頁</a></li> <li><a href="#">我的書</a></li> <li class="active">《圖解CSS3》</li> </ol>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Bootstrap每天必學(xué)之導(dǎo)航條
- Bootstrap實(shí)現(xiàn)響應(yīng)式導(dǎo)航欄效果
- Bootstrap實(shí)現(xiàn)默認(rèn)導(dǎo)航欄效果
- Bootstrap每天必學(xué)之導(dǎo)航
- 第一次接觸神奇的Bootstrap菜單和導(dǎo)航
- Bootstrap每天必學(xué)之附加導(dǎo)航(Affix)插件
- Bootstrap導(dǎo)航欄各元素操作方法(表單、按鈕、文本)
- 第一次接觸神奇的Bootstrap導(dǎo)航條
- Bootstrap多級導(dǎo)航欄(級聯(lián)導(dǎo)航)的實(shí)現(xiàn)代碼
- JS組件Bootstrap導(dǎo)航條使用方法詳解
相關(guān)文章
JS實(shí)現(xiàn)簡潔、全兼容的拖動(dòng)層實(shí)例
這篇文章主要介紹了JS實(shí)現(xiàn)簡潔、全兼容的拖動(dòng)層的方法,實(shí)例分析了javascript鼠標(biāo)事件及頁面元素的操作技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-05-05uniapp實(shí)現(xiàn)注冊發(fā)送獲取驗(yàn)證碼功能
隨著網(wǎng)絡(luò)的發(fā)達(dá),總會(huì)有人惡意注冊網(wǎng)站,而使用輸入驗(yàn)證碼功能可以有效的阻止這一類現(xiàn)象的發(fā)生,下面這篇文章主要給大家介紹了關(guān)于uniapp實(shí)現(xiàn)注冊發(fā)送獲取驗(yàn)證碼功能的相關(guān)資料,需要的朋友可以參考下2022-11-11js如何使用Pagination+PageHelper實(shí)現(xiàn)分頁
本文主要介紹了js如何使用Pagination+PageHelper實(shí)現(xiàn)分頁,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-06-06一個(gè)用js實(shí)現(xiàn)控制臺(tái)控件的代碼
一個(gè)用js實(shí)現(xiàn)控制臺(tái)控件的代碼...2007-09-09js自定義trim函數(shù)實(shí)現(xiàn)刪除兩端空格功能
這篇文章主要介紹了js自定義trim函數(shù)實(shí)現(xiàn)刪除兩端空格功能,結(jié)合實(shí)例形式分析了javascript基于正則替換實(shí)現(xiàn)類似trim函數(shù)刪除字符串兩端空格的相關(guān)操作技巧,并附帶jQuery類似功能函數(shù)使用方法,需要的朋友可以參考下2018-02-02JavaScript使用Promise封裝Axios進(jìn)行高效開發(fā)
這篇文章主要介紹了JavaScript使用Promise封裝Axios進(jìn)行高效開發(fā),Axios是一個(gè)基于Promise的HTTP庫,它可以幫助我們更方便地發(fā)起HTTP請求,并且提供了許多高級功能,感興趣的同學(xué)可以參考下文2023-05-05