Boxed Layout

Description

The boxed layout has a padding around the main wrapper as well as a background can be applied to it and all your content will be centered with the background flowing around it.

CSS Classes

This table contains all classes related to the boxed layout, by using these layout specific classes you can apply its css.

All these options can be set via following classes:

Classes Description
.container This is the bootstrap class, the .container class provides a responsive fixed width container To create boxed layout you need to add .container class in <body> tag.
.boxed-layout To create boxed-layout you also require to use .boxed-layout class in <body> tag, this class help page to identify the layout type.

HTML Markup

This section contains HTML Markup to create boxed layout page. You need to add the .boxed-layout class in the <body> tag as show in below markup on line no 4. This layout has a navigation, content and left sidebar sections with common header & footer.

  • Line no 4: Contain the and .container and .boxed-layout classes for applying boxed layout css to page.

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-columns container boxed-layout menu-collapsed">
                  <!-- 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-fixed 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 body-->
                          <div class="content-body">
                              ...
                          </div>
                          <!-- content body-->
                      </div>
                  </div>
                  <!-- END Content-->
                  <!-- START FOOTER DARK-->
                  <footer class="footer footer-dark">
                      ...
                  </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 boxed layout.

Block Variable Datatype Value Description
pageConfig boxedLayout boolean true pageConfig block has a page configuration variables, in that for boxed layout you need to define variable - var boxedLayout = true.
JADE Code

To generate boxed layout page or template, you need to use following JADE code.

  • Line no 20-21: You must have to set boxedLayout variable value as true in pageConfig block, this will be used in jade condition to add .boxed-layout and .container class to <body>.
  • Line no 27-28: content block has content section html file included include ../contents/layout-boxed.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 boxed layout layout-boxed.jade, however you can use it on template level but it will generate whole template as a content left sidebar.

              
                block pageVars
                    - var pageTitle    = "Boxed Layout"
                    - var pageSubTitle = "Boxed layout with collapsed navigation"
                    - var description  = "The boxed layout has a padding around the main wrapper as well as a background applied to it."
                    - var activeMenu   = "layout-boxed"
                extends template
                append pageConfig
                    - var boxedLayout = true
                append breadcrumbs
                    +breadcrumbs([{url:"index.html",name:"Home"},{url:"#",name:"Page Layouts"}, {name:"Boxed Layout"}])
                //- Include page content in page block
                append content
                    include ../contents/layout-boxed.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