Fixed Navbar & Footer

Description

The fixed navbar & footer layout has a fixed navbar, footer and static navigation. In this page you can experience it. Fixed layout provide seamless UI on different screens.

CSS Classes

This table contains all classes related to the fixed navbar & footer layout. This is a custom layout classes for fixed navbar & footer 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.
.footer-fixed To set the main footer fixed on page .footer-fixed class needs to add in footer wrapper. Refer HTML markup line no 37.

HTML Markup

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

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

Stack has a ready to use starter kit, you can use this layout directly by using the starter kit pages from the stack-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-fixed">
                      ...
                  </footer>
                  <!-- START FOOTER DARK-->
                </body>
              </html>
        
        

JADE Configuration

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

JADE Variables

This table contains required JADE variables to generate fixed navbar & footer layout.

Block Variable Datatype Value Description
navbarConfig navbarPosition string 'fixed-top' navbarConfig block has a navbarPosition variable, it contains navbar position specific classes in that you need to set 'fixed-top' for fixed navbar.
footerConfig footerType string 'footer-fixed' footerConfig block has a footerType variable, it contains footer type specific classes in that you need to set 'footer-fixed'.
JADE Code

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

  • Line no 22-23: Set navbar fixed class to navbarPosition variable value as 'fixed-top' in navbarConfig block.
  • Line no 25-26: Set footer fixed class to footerType variable value as 'footer-fixed' in footerConfig block.
  • Line no 32-33: content block has content section html file included include ../contents/layout-fixed-navbar-footer.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 jade file for fixed layout-fixed-navbar-footer.jade, however you can use it on template level but it will generate whole template as a fixed navbar & footer layout.

              
                block pageVars
                        - var pageTitle    = "Fixed Navbar & Footer"
                        - var pageSubTitle = "The fixed navbar with fixed footer"
                        - var description  = "Fixed navbar & footer page structure have fixed navbar and footer, static navigation"
                        - var activeMenu   = "layout-fixed-navbar-footer"
                
                extends template
                
                append pageConfig
                
                append navbarConfig
                        - var navbarPosition = "fixed-top"                      
                
                append footerConfig
                        - var footerType = "fixed-bottom"
                
                append breadcrumbs
                        +breadcrumbs([{url:"index.html",name:"Home"},{url:"#",name:"Page Layouts"}, {name:"Fixed Navbar & Footer"}])
                
                //- Include page content in page block
                append content
                        include ../contents/layout-fixed-navbar-footer.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