Fixed Navbar

Description

The fixed navbar layout has a fixed navbar and static navigation menu and footer. Only navbar section is fixed to user. In this page you can experience it.

CSS Classes

This table contains all classes related to the fixed navbar layout. This is a custom layout classes for fixed navbar layout page requirements.

All these options can be set via following classes:

Classes Description
.fixed-top To set navbar fixed you need to add .fixed-top class in navbar <nav> tag. Refer HTML markup line no 7.

HTML Markup

This section contains HTML Markup to create fixed navbar layout. This markup define where to add css classes to make navbar fixed.

  • Line no 7: Contain the .fixed-top class for adjusting navbar fixed on top.

Modern has a ready to use starter kit, you can use this layout directly by using the starter kit pages from the modern-admin/starter-kit folder.

        
            <!DOCTYPE html>
              <html lang="en">
                <head></head>
                <body data-menu="vertical-menu" class="vertical-layout vertical-menu 2-column menu-expanded">
                  <!-- fixed-top-->
                  <nav role="navigation" class="header-navbar navbar-expand-sm navbar navbar-with-menu fixed-top navbar-dark navbar-shadow navbar-border">
                      ...
                  </nav>
                  <!-- BEGIN Navigation-->
                  <div class="main-menu menu-dark menu-shadow">
                      ...
                  </div>
                  <!-- END Navigation-->
                  <!-- BEGIN Content-->
                  <div class="content app-content">
                      <div class="content-wrapper">
                          <!-- content header-->
                          <div class="content-header row">
                              ...
                          </div>
                          <!-- content header-->
                          <!-- content right-->
                          <div class="content-right">
                              ...
                          </div>
                          <!-- content right-->
                      </div>
                  </div>
                  <!-- END Content-->
                  <!-- START FOOTER DARK-->
                  <footer class="footer footer-dark">
                      ...
                  </footer>
                  <!-- START FOOTER DARK-->
                </body>
              </html>
        
        

PUG Configuration

Modern Admin use PUG as template engine to generate pages and whole template quickly using node js, for getting start with PUG usage & template generating process please refer template documentation.

PUG Variables

This table contains required PUG variables to generate fixed navbar layout.

Block Variable Datatype Value Description
navbarConfig navbarPosition string 'fixed-top' navbarConfig block has a navbarPosition variable, it contains navbar specific classes in that you need to add fixed-top
PUG Code

To generate fixed navbar layout page or template, you need to use following PUG code.

  • Line no 20-21: Set navbar fixed class to navbarPosition variable value as 'fixed-top' in navbarConfig block.
  • Line no 28-29: content block has content section html file included include ../contents/layout-fixed-navbar.html, which can be customizable on page level.

If you want to use this layout on page level you need to define it on page it self. This template has one example pug file for fixed layout-fixed-navbar.pug, however you can use it on template level but it will generate whole template as a fixed navbar layout.

            
              block pageVars
                - var pageTitle    = "Fixed Navbar"
                - var pageSubTitle = "Fixed navbar with fixed navigation"
                - var description  = "Fixed navbar page structure have fixed navbar, static navigation and footer."
                - var activeMenu   = "layout-fixed-navbar"
              extends template
              append navbarConfig
                - var navbarPosition = "fixed-top" 
              append breadcrumbs
                +breadcrumbs([{url:"index.html",name:"Home"},{url:"#",name:"Page Layouts"}, {name:"Fixed Navbar"}])
              //- Include page content in page block
              append content
                include ../contents/layout-fixed-navbar.html
              //- Vendor CSS
              //------------------------------
              //- Add Vendor specific CSS
              append vendorcss                
              //- Page CSS
              //------------------------------
              //- Add custom page specific CSS
              append pagecss
              //- Vendor JS
              //------------------------------
              //- Add vendor specific JS
              append vendorjs
              //- Page JS
              //------------------------------
              //- Add custom page specific JS
              append pagejs