搜尋
首頁web前端Bootstrap教程詳解bootstrap自訂側邊導覽列的方法

本篇文章為大家介紹一下bootstrap自訂側邊導覽列的方法。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。

詳解bootstrap自訂側邊導覽列的方法

bootstrap自帶的響應式導覽列是向下滑動的,有時滿足不了個性化的需求,需要做一個類似於android drawerLayout 側滑的選單,這就是我要實現的bootstrap自訂側滑選單,參考了很多官網的側滑,實現方法各有不同,優缺點也十分明顯,有的官網首頁為了僅僅實現一個側滑的效果,用了owl.carousel滑屏的插件,個人覺得小題大作了。這個bootstrap側滑選單更專業的名字叫做手機導覽列。我也比較這個名字,比較符合bootstrap的特性。所以我這篇文章介紹的更容易的一種做法,新手比較容易接受。

相關推薦:《bootstrap教學

bootstrap側邊導覽列實作原理

  • #側邊滑欄使用定位fixed

  • 使用bootstrap響應式使用工具類別visible-sm visible-xs hidden-xs hidden-sm等對不同螢幕適配

  • 側邊滑欄的側滑效果不使用jquery方法來實現,使用的是css3 transforms屬性進行p的移動,側滑的動畫效果使用的是css屬性transition

  • #缺點:使用兩套選單,一套是pc端螢幕顯示的選單,一套是行動端顯示的手機導航選單,這個缺點比較明顯,產生無關的標籤,優點碼少,簡單容易接受

效果圖

詳解bootstrap自訂側邊導覽列的方法

詳解bootstrap自訂側邊導覽列的方法

#bootstrap導航欄佈局

    <!--手机导航栏-->
    <div id="mobile-menu" class="mobile-nav visible-xs visible-sm">
        <ul>
            <li><a href="#">首页</a></li>
            <li><a href="#">Java</a></li>
            <li><a href="#">SVN</a></li>
            <li><a href="#">iOS</a></li>
        </ul>
    </div>
    <!--pc导航栏-->
    <nav class="navbar-inverse visible-lg visible-md" role="navigation">
        <div class="container">
            <div class="navbar-header">
                <a class="navbar-brand" href="#">菜鸟教程</a>
            </div>
            <div>
                <ul class="nav navbar-nav">
                    <li class="active"><a href="#">iOS</a></li>
                    <li><a href="#">SVN</a></li>
                    <li><a href="#" class="dropdown-toggle" data-toggle="dropdown">Java</a></li>
                </ul>
            </div>
        </div>
    </nav>
    <!--手机导航栏侧滑-->
    <div class="nav-btn visible-xs visible-sm">
        <a href="#" class="mobile-nav-taggle" id="mobile-nav-taggle">
            <span class="glyphicon glyphicon-align-justify"></span>
        </a>
    </div>

一個導覽列的佈局,用了兩個導航選單,一個是pc端的,一個是手機端,利用bootstrap響應式使用工具類visible-xs visible-sm來實現pc端隱藏切換按鈕;visible-lg visible-md 實現了pc端顯示導航欄;visible-xs visible-sm實現手機端顯示手機導航列。
bootstrap響應式工具類別詳見:https://www.runoob.com/bootstrap/bootstrap-responsive-utilities.html

css實現佈局和側滑效果(側滑的關鍵css3屬性transform、transition)

程式碼不多,僅10行

* {margin:0;padding:0;}
#mobile-menu {position:fixed;top:0;left:0;width:220px;height:100%;background-color:#373737;z-index:9999;}
a:hover ,a:focus{text-decoration:none}
.mobile-nav ul li a {color:gray;display:block;padding:1em 5%;    border-top:1px solid #4f4f4f;border-bottom:1px solid #292929;transition:all 0.2s ease-out;cursor:pointer;#mobile-menu {position:fixed;top:0;left:0;width:220px;height:100%;background-color:#373737;z-index:9999;transition:all 0.3s ease-in;}}
.mobile-nav ul li a:hover {background-color: #23A1F6;color: #ffffff;}
.show-nav {transform:translateX(0);}
.hide-nav {transform:translateX(-220px);} /*侧滑关键*/
.mobile-nav-taggle {height:35px;line-height:35px;width:35px;background-color:#23A1F6;color:#ffffff;display:inline-block;text-align:center;cursor:pointer}
.nav.avbar-inverse{position:relative;}
.nav-btn {position:absolute;right:20px;top:20px;}

要值得注意的是css3的兩個屬性:

##transform:旋轉p,支援元素2D或3D旋轉,屬性值translateX(X)就是在X軸上移動Xpx的距離

而側滑的動畫效果是使用transition屬性,設定屬性的過渡動畫的效果,語法


transition: property duration timing-function delay;

點擊事件切換側滑

        $("#mobile-nav-taggle").click(function () {
            var mobileMenu = $("#mobile-menu");
            if (mobileMenu.hasClass("show-nav")) {
                setTimeout(function () {
                    mobileMenu.addClass("hide-nav").removeClass("show-nav");
                }, 100)
            }
            else {
                setTimeout(function (){
                    mobileMenu.addClass("show-nav").removeClass("hide-nav");
                }, 100)
            }
        })

總結

不建議使用兩個選單導覽列,缺點很明顯,為了實現效果而已,不要介意,其實用一個選單導覽列也是可以實現,試試media 完全可以實現。

本文轉載自:http://blog.csdn.net/kebi007/article/details/76038251

更多程式相關知識,請造訪:

程式設計影片 ! !

以上是詳解bootstrap自訂側邊導覽列的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:csdn。如有侵權,請聯絡admin@php.cn刪除
Bootstrap:簡化響應式Web開發Bootstrap:簡化響應式Web開發May 09, 2025 am 12:13 AM

Bootstrap簡化開發流程主要通過其柵格系統、預定義組件和JavaScript插件。 1.柵格系統允許靈活佈局,2.預定義組件如按鈕和導航欄簡化樣式設計,3.JavaScript插件增強交互功能,提升開發效率。

Bootstrap:響應式Web設計的關鍵Bootstrap:響應式Web設計的關鍵May 08, 2025 am 12:24 AM

Bootstrap是由Twitter開發的開源前端框架,提供了豐富的CSS和JavaScript組件,簡化了響應式網站的構建。 1)其網格系統基於12列佈局,通過類名控制元素在不同屏幕尺寸下的顯示。 2)組件庫包括按鈕、導航欄等,易於定制和使用。 3)工作原理依賴於CSS和JavaScript文件,需注意處理依賴關係和样式衝突。 4)使用示例展示了基本和高級用法,強調了自定義功能的重要性。 5)常見錯誤包括網格系統計算錯誤和样式覆蓋,需使用開發者工具調試。 6)性能優化建議只引入必要組件,使用預處理器定製樣

Bootstrap:一個強大的Web設計框架Bootstrap:一個強大的Web設計框架May 07, 2025 am 12:05 AM

Bootstrap是一個開源的前端框架,由Twitter團隊開發,旨在簡化和加速網頁開發過程。 1.Bootstrap基於HTML、CSS和JavaScript,提供了豐富的組件和工具,用於創建現代化的用戶界面。 2.它的核心在於響應式設計,通過預定義的類和組件實現各種佈局和样式。 3.Bootstrap提供了預定義的UI組件,如導航欄、按鈕、表單等,易於使用和調整。 4.使用示例包括創建簡單的導航欄和高級的可折疊側邊欄。 5.常見錯誤包括版本衝突、CSS覆蓋和JavaScript錯誤,可通過版本管理工具

Bootstrap在React中的力量:詳細的外觀Bootstrap在React中的力量:詳細的外觀May 06, 2025 am 12:06 AM

Bootstrap在React中可以通過兩種方式集成:1)使用Bootstrap的CSS和JavaScript文件;2)使用React-Bootstrap庫。 React-Bootstrap提供了封裝好的React組件,使得在React中使用Bootstrap更加自然和高效。

在React中使用Bootstrap組件:逐步教程在React中使用Bootstrap組件:逐步教程May 05, 2025 am 12:09 AM

在React項目中使用Bootstrap組件可以通過兩種方式:1)使用原始Bootstrap的CSS和JavaScript;2)使用專門為React設計的庫如react-bootstrap或reactstrap。 1)通過npm安裝Bootstrap並在入口文件中引入其CSS文件,然後在React組件中使用Bootstrap類名。 2)安裝react-bootstrap或reactstrap後,直接使用其提供的React組件。使用這些方法可以快速構建響應式UI,但需注意樣式加載、JavaScript

簡單英語的引導程序:簡化網絡開發簡單英語的引導程序:簡化網絡開發May 04, 2025 am 12:02 AM

Bootstrap是開源的前端框架,簡化網頁開發。 1.它基於HTML、CSS、JavaScript,提供預定義樣式和組件。 2.使用預定義類和JavaScript插件,實現響應式佈局和交互功能。 3.基本用法是引入CSS和JavaScript文件,使用類創建導航欄等。 4.高級用法包括自定義復雜佈局。 5.調試時檢查類名和文件引入,使用開發者工具。 6.優化建議是只引入必要文件,使用CDN,自定義時用LESS或Sass。

引導和反應:創建響應式Web應用程序引導和反應:創建響應式Web應用程序May 03, 2025 am 12:13 AM

如何利用Bootstrap和React打造響應式Web應用?通過結合Bootstrap的CSS框架和React的組件化架構,可以創建現代、靈活且易於維護的Web應用。具體步驟包括:1)導入Bootstrap的CSS文件並使用其類樣式化React組件;2)利用React的組件化管理狀態和邏輯;3)按需加載Bootstrap樣式以優化性能;4)使用React的Hooks和Bootstrap的JavaScript組件創建動態界面。

Bootstrap:前端開髮變得更加容易Bootstrap:前端開髮變得更加容易May 02, 2025 am 12:10 AM

Bootstrap是一種開源的前端框架,幫助開發者快速構建響應式網站。 1)它提供了預定義的樣式和組件,如網格系統和導航欄。 2)通過CSS和JavaScript文件實現樣式和動態交互。 3)基本用法是引入文件並使用類名構建頁面。 4)高級用法包括通過Sass自定義樣式。 5)常見問題包括樣式衝突和JavaScript組件問題,可通過開發者工具和模塊化管理解決。 6)性能優化建議選擇性引入模塊和合理使用網格系統。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能