Skip to content
geeksforgeeks
  • Tutorials
    • Python
    • Java
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
    • Practice Coding Problems
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • BS5 Tutorial
  • BS5 Interview Questions
  • BS5 Layout
  • BS5 Content
  • BS5 Components
  • BS5 Helpers
  • BS5 Utilities
  • BS4 Tutorial
  • BS Tutorial
  • Bootstrap Cheatsheet
  • Tailwind
  • CSS Frameworks
  • HTML Formatter
Open In App
Next Article:
How to put two columns one below other in sidebar in Bootstrap?
Next article icon

How to use Top Navigation with Left Navigation Bar using Bootstrap?

Last Updated : 19 Sep, 2024
Comments
Improve
Suggest changes
Like Article
Like
Report

Using Top Navigation with Left Navigation Bar in Bootstrap means creating a layout with a responsive top navigation bar (typically for global site navigation) and a left sidebar for additional links or menus. This combines Bootstrap’s grid system, navbar classes, and custom CSS for layout management.

Here are some common approaches:

Table of Content

  • Using Bootstrap's Grid System for Layout
  • Using Custom CSS for Fixed Sidebar Layout

Approach 1: Using Bootstrap's Grid System for Layout

Bootstrap's grid system to structure the layout. The page is divided into columns, with the sidebar occupying one column (e.g., col-2) and the main content occupying another (e.g., col-10), ensuring responsiveness and easy alignment.

Example 1: This example sets up a top navbar using Bootstrap's predefined classes and a left sidebar in a full-height container with custom CSS, combining responsive Bootstrap links and additional sidebar navigation links.

HTML
<!DOCTYPE html> <html>    <head>     <!-- import bootstrap cdn-->     <link rel="stylesheet" href= "https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css"         integrity= "sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z"          crossorigin="anonymous">     <!-- import jquery cdn -->     <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"         integrity= "sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj"          crossorigin="anonymous">     </script>     <!-- import popper.js cdn -->     <script src= "https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/popper.min.js"         integrity= "sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN"          crossorigin="anonymous">     </script>     <!-- import javascript cdn -->     <script src= "https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"         integrity= "sha384-B4gt1jrGC7Jh4AgTPSdUtOBvfO8shuf57BaghqFfPlYxofvL8/KUEfYiJOMMV+rV"          crossorigin="anonymous">     </script>     <!-- CSS stylesheet -->     <style type="text/css">         html,         body {             height: 100%;         }         #green {             height: 100%;             background: green;             text-align: center;             color: black;         }     </style> </head>    <body>     <!-- top navbar -->     <nav class="navbar navbar-expand-lg             navbar-light bg-primary">         <a class="navbar-brand" href="#">Navbar</a>         <!-- hamburger button that toggles the navbar-->         <button class="navbar-toggler" type="button"              data-toggle="collapse" data-target="#navbarNavAltMarkup"             aria-controls="navbarNavAltMarkup" aria-expanded="false"              aria-label="Toggle navigation">             <span class="navbar-toggler-icon">             </span>         </button>         <!-- navbar links -->         <div class="collapse navbar-collapse" id="navbarNavAltMarkup">             <div class="navbar-nav">                 <a class="nav-item nav-link                     active" href="#">                   Home                   </a>                 <a class="nav-item nav-link" href="#">Features</a>                 <a class="nav-item nav-link" href="#">Price</a>                 <a class="nav-item nav-link" href="#">About</a>             </div>         </div>     </nav>     <!-- This container contains the sidebar             and main content of the page -->     <!-- h-100 takes the full height of the body-->     <div class="container-fluid h-100">         <div class="row h-100">             <div class="col-2" id="green">                 <h4>Sidebar</h4>                 <!-- Navigation links in sidebar-->                 <a href="#">Link 1</a>                 <br/>                 <br/>                 <a href="#">Link 2</a>                 <br/>                 <br/>                 <a href="#">Link 3</a>                 <br/>                 <br/>                 <a href="#">Link 4</a>                 <br/>                 <br/>             </div>             <!--Contains the main content                     of the webpage-->             <div class="col-10" style="text-align: justify;">                 Bootstrap is a free and open-source                 tool collection for creating responsive                 websites and web applications. It                 is the most popular HTML, CSS, and                 JavaScript framework for developing                 responsive, mobile-first web sites.             </div>         </div>     </div> </body>    </html> 

Output:

Approach 2: Using Custom CSS for Fixed Sidebar Layout

The Custom CSS for Fixed Sidebar Layout approach uses custom CSS to create a fixed-position sidebar that remains full-height and separate from the main content. The top navbar spans the full width, while the content adjusts dynamically beside the fixed sidebar.

Example: This layout uses Bootstrap with a top navbar and left sidebar. The sidebar occupies col-2, while the main content and collapsible navbar take col-10, ensuring responsiveness with a hamburger menu on smaller screens.

HTML
<!DOCTYPE html> <html>    <head>     <title>Topnav with sidebar</title>     <!-- Import bootstrap cdn -->     <link rel="stylesheet" href= "https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css"         integrity= "sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z"          crossorigin="anonymous">     <!-- Import jquery cdn -->     <script src= "https://code.jquery.com/jquery-3.5.1.slim.min.js"         integrity= "sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj"          crossorigin="anonymous">     </script>     <!-- Import popper.js cdn -->     <script src= "https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/popper.min.js"         integrity= "sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN"          crossorigin="anonymous">     </script>     <!-- Import javascript cdn -->     <script src= "https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"         integrity= "sha384-B4gt1jrGC7Jh4AgTPSdUtOBvfO8shuf57BaghqFfPlYxofvL8/KUEfYiJOMMV+rV"          crossorigin="anonymous">     </script>     <!-- CSS stylesheet -->     <style type="text/css">         html,         body {             height: 100%;         }         #green {             height: 100%;             background: green;             text-align: center;             color: black;             padding: 15px;         }     </style> </head>    <body>     <!-- h-100 takes the full height of the body-->     <div class="container-fluid h-100">         <!-- h-100 takes the full height                 of the container-->         <div class="row h-100">             <div class="col-2" id="green">                 <h4>Sidebar</h4>                 <!-- Navigation links in sidebar-->                 <a href="#">Link 1</a><br />                 <br />                 <a href="#">Link 2</a><br />                 <br />                 <a href="#">Link 3</a><br />                 <br />                 <a href="#">Link 4</a><br />                 <br />             </div>             <div class="col-10" style="padding: 0;">                 <!-- Top navbar -->                 <nav class="navbar navbar-expand-lg                                 navbar-light bg-primary">                     <a class="navbar-brand" href="#">Navbar</a>                     <!-- Hamburger button that toggles the navbar-->                     <button class="navbar-toggler" type="button"                          data-toggle="collapse"                         data-target="#navbarNavAltMarkup"                          aria-controls="navbarNavAltMarkup"                          aria-expanded="false"                         aria-label="Toggle navigation">                         <span class="navbar-toggler-icon"></span>                     </button>                     <!-- navbar links -->                     <div class="collapse navbar-collapse"                          id="navbarNavAltMarkup">                         <div class="navbar-nav">                             <a class="nav-item nav-link                                 active" href="#">                                Home                               </a>                             <a class="nav-item nav-link" href="#">Features</a>                             <a class="nav-item nav-link" href="#">Price</a>                             <a class="nav-item nav-link" href="#">About</a>                         </div>                     </div>                 </nav>                 <!-- Contains the main content of the webpage-->                 <p style="padding: 15px; text-align: justify;">                     Bootstrap is a free and open-source                     tool collection for creating responsive                     websites and web applications.                     It is the most popular HTML, CSS, and                     JavaScript framework for developing                     responsive, mobile-first web sites.                 </p>              </div>         </div>     </div> </body>    </html> 

Output:


Next Article
How to put two columns one below other in sidebar in Bootstrap?

S

Shreyasi_Chakraborty
Improve
Article Tags :
  • Web Technologies
  • HTML
  • Bootstrap
  • HTML-Misc
  • Bootstrap-Misc
  • Bootstrap-Questions

Similar Reads

    Bootstrap Tutorial
    Bootstrap is a popular front-end framework for building responsive and mobile-first websites. It provides pre-designed CSS, JavaScript components, and utility classes to quickly create modern and consistent user interfaces.It Includes pre-built responsive grid systems for mobile-first design.Offers
    4 min read
    Bootstrap 5 Tutorial
    Bootstrap 5 is a front-end framework that helps developers create responsive and visually appealing websites quickly and efficiently. Bootstrap 5 simplifies the process of web development with its intuitive design system and extensive components. This version includes improved responsiveness, stream
    6 min read
    Bootstrap 4 Tutorial
    Bootstrap 4 is an open-source framework for creating responsive web applications. It is the most popular CSS framework for creating mobile-first websites. It is free to use we can directly integrate Bootstrap 4 into our project using CDN Links or with npm. Bootstrap 4 Tutorial is designed to help be
    3 min read

    Bootstrap 5

    Bootstrap 5 Introduction
    Bootstrap is a free and open-source collection of CSS and JavaScript/jQuery code used for creating dynamic websites layout and web applications. Bootstrap is one of the most popular front-end frameworks which has really a nice set of predefined CSS codes. Bootstrap uses different types of classes to
    4 min read
    Bootstrap 5 Progress
    Bootstrap 5 is the latest major release by Bootstrap in which they have revamped the UI and made various changes. A progress bar is used to display the progress of a process on a computer. A progress bar displays how much of the process is completed and how much is left. You can add a progress bar o
    5 min read
    Bootstrap 5 Buttons
    Bootstrap 5 Buttons are pre-styled components in the Bootstrap framework, offering consistent design and functionality. They streamline development by providing ready-to-use button styles, sizes, and behaviors, ensuring a cohesive and responsive user interface across web applications with minimal CS
    3 min read
    Bootstrap 5 Badges
    Bootstrap 5 Badges are small components used to highlight specific information, typically in lists or inline with other content. They provide visual cues through colored backgrounds and customizable text, helping to draw attention to key details or status indicators within a webpage or application.
    2 min read
    Bootstrap 5 Alerts
    Bootstrap 5 Alerts are customizable components used to convey important information to users. They come in various styles such as success, warning, danger, and info, providing visual feedback to users based on different actions or states within a web application. iframe { width: 100%; height: 450px;
    2 min read
    Bootstrap 5 Modal
    Bootstrap 5 is the latest major release by Bootstrap in which they have revamped the UI and made various changes. Modals are used to add dialogs to your site for lightboxes, user notifications, or completely custom content. Modals are built with HTML, CSS, and JavaScript. They’re positioned over eve
    7 min read

    Bootstrap 4

    Bootstrap 4 Introduction
    Bootstrap is a free and open-source tool collection for creating responsive websites and web applications. It is the most popular HTML, CSS, and JavaScript framework for developing responsive, mobile-first websites. It solves many problems which we had once, one of which is the cross-browser compati
    3 min read
    Bootstrap 4 | Grid System
    Bootstrap Grid System allows up to 12 columns across the page. You can use each of them individually or merge them together for wider columns. All combinations of values summing up to 12 can be used. Grid Classes: Bootstrap grid system contains five classes which are listed below: .col- It is used f
    3 min read
    Bootstrap 4 | Typography
    Typography is a feature of Bootstrap for styling and formatting the text content. It is used to create customized headings, inline subheadings, lists, paragraphs, aligning, adding more design-oriented font styles, and much more. Bootstrap support global settings for the font stack, Headings and Link
    3 min read
    Bootstrap 4 | Colors
    Text Colors: Bootstrap provides many classes to set the text color of an element. All classes of text colors are listed below: Example: This example uses text color class to set the color of text content. html <!DOCTYPE html> <html lang="en"> <head> <title>Bootstrap
    2 min read
    Bootstrap 4 | Tables
    Bootstrap provides a series of classes that can be used to apply various styling to the tables such as changing the heading appearance, making the rows stripped, adding or removing borders, making rows hoverable, etc. Bootstrap also provides classes for making tables responsive. Simple Table: The .t
    9 min read
    Bootstrap 4 Images
    Bootstrap 4 provides classes to style images responsively, including responsive images that automatically adjust the size based on screen width, image shapes such as rounded or circular, and image thumbnails with optional borders and captions, facilitating flexible and attractive image layouts. The
    4 min read

    Bootstrap Questions

    How to design Bootstrap Fullscreen Select feature for Mobiles ?
    In this article, we will learn how to design Bootstrap fullscreen select feature for mobile devices.It provides advanced HTML full screen select functionality.It provides in and out animations.It provides open and close events function callbacks.It provides CSS3 animated buttons, dropdowns and texts
    3 min read
    How to use Top Navigation with Left Navigation Bar using Bootstrap?
    Using Top Navigation with Left Navigation Bar in Bootstrap means creating a layout with a responsive top navigation bar (typically for global site navigation) and a left sidebar for additional links or menus. This combines Bootstrap’s grid system, navbar classes, and custom CSS for layout management
    4 min read
    How to put two columns one below other in sidebar in Bootstrap?
    To place two columns one below the other in a sidebar using Bootstrap, you can use Bootstrap's grid system. By setting up a vertical stacking of columns within a sidebar container, you ensure that the columns appear one below the other. This is achieved by using a single column width and placing the
    5 min read
    How to always show first two rows in dynamic collapse using Bootstrap ?
    Bootstrap is an open-source front-end CSS framework used widely for the development of interactive websites. Bootstrap with HTML and JavaScript adds interactivity to the user interface. jQuery is a JS library used for the manipulation of HTML DOM, event handling, CSS animations, and Ajax. jQuery is
    6 min read
    How to add a black hover to an image using bootstrap?
    Bootstrap is a popular CSS framework widely used by frontend developers to create interactive UI for web applications. Bootstrap is widely used because of its simplicity and ease to use. Bootstrap allows multiple utilities to make images interactive. One of these utilities can be changing the color
    4 min read
    How to create full width container using bootstrap?
    Bootstrap offers two types of containers: fixed-width containers and full-width, fluid containers. The container-fluid class is used to create a full-width container that spans the entire width of the viewport, adjusting dynamically as the viewport size changes.Container Types in BootstrapFixed-Widt
    3 min read
    How to fit the image into modal popup using Bootstrap?
    Modal plugin allows us to add a dialog popup window that is displayed on top of the current page. Bootstrap provides an easy, yet effective way to incorporate modal into our web pages. Modal can consist of any content along with a header and footer.Images can be fitted in modal popup using Bootstrap
    2 min read
    Bootstrap Examples
    The following Bootstrap section contains a wide collection of Bootstrap examples. These examples are categorized based on the topics including basics, directives, functions, and many more. Each example may contain multiple approaches to solve the problem. Table of Content CustomizeLayoutContentForms
    4 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences