Description
Content layout with left sticky sidebar provides more navigations options on page level. For the larger screen this layout provides best usability. This layout use the third column as a sticky sidebar section.
CSS Classes
This table contains all classes related to the content left sticky sidebar layout. This is a custom layout classes for content left sticky sidebar layout page requirements.
All these options can be set via following classes:
Classes | Description |
---|---|
.content-left-sidebar |
You can create 3 column left layout by adding .content-left-sidebar class in <body> tag. |
.content-right |
In this layout content should be float in right side, so
.content-right class needs to add in content
wrapper. Refer HTML markup line no 27. |
.sidebar-left |
In this layout sidebar should be float in left side, so
.sidebar-right class needs to add in sidebar
wrapper. Refer HTML markup line no 33. |
.sidebar-sticky |
To create sticky sidebar add .sidebar-sticky class. Refer HTML markup line no 34. |
This section contains HTML Markup to create 3 column left sticky
sidebar layout. You need to add the .content-left-sidebar
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 27: Contain the
.content-right
class for adjusting content section in right side. -
Line no 33: Contain the
.sidebar-left
class for adjusting sidebar section in left side. -
Line no 34: Contain the
.sidebar-sticky
class, that will make the left sidebar sticky.
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 content-left-sidebar menu-expanded">
<!-- navbar-fixed-top-->
<nav role="navigation" class="header-navbar navbar navbar-with-menu navbar-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 container-fluid">
<div class="content-wrapper">
<!-- content header-->
<div class="content-header row">
...
</div>
<!-- content header-->
<!-- content right-->
<div class="content-content-right">
...
</div>
<!-- content right-->
<!-- sidebar left-->
<div class="sidebar-sidebar-left">
<div class="sidebar sidebar-sticky">
...
</div>
</div>
<!-- sidebar left-->
</div>
</div>
<!-- END Content-->
<!-- START FOOTER DARK-->
<footer class="footer footer-dark">
...
</footer>
<!-- START FOOTER DARK-->
</body>
</html>
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 3 column left sticky sidebar layout.
Block | Variable | Datatype | Value | Description |
---|---|---|---|---|
pageConfig |
contentLayout |
string |
'content-left-sidebar' |
pageConfig block has a page configuration
variables, in that for 3 column layout need to define
variable - var contentLayout = 'content-left-sidebar' |
pageConfig |
sidebarSticky |
boolean |
true |
To make left sticky sidebar pageConfig block
also require - var sidebarSticky = true configuration variables, set value as true to enable it. |
PUG Code
To generate content left sticky sidebar layout page or template, you need to use following PUG code.
-
Line no 20-22: You need to set
contentLayout
variable value as'content-left-sidebar'
inpageConfig
block. -
Line no 22: You need to set
sidebarSticky
variable value astrue
inpageConfig
block to enable left sticky sidebar. -
Line no 28-29:
content
block has content section html file includedinclude ../contents/layout-content-left-sticky-sidebar.html
, which can be customizable on page level. -
Line no 31-32:
sidebar
block has sidebar section html file includedinclude ../contents/sidebar-common.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
content left sticky sidebar layout-content-left-sticky-sidebar.pug
,
however you can use it on template level but it will generate
whole template as a content left sticky sidebar.
block pageVars
- var pageTitle = "Content Left Sticky Sidebar"
- var pageSubTitle = "content layout with left sticky sidebar"
- var description = "The content layout page structure with navigation, content area and left sticky sidebar."
- var activeMenu = "layout-content-left-sticky-sidebar"
extends template
append pageConfig
- var contentLayout = 'content-left-sidebar'
- var sidebarSticky = true
append breadcrumbs
+breadcrumbs([{url:"index.html",name:"Home"},{url:"#",name:"Page Layouts"}, {name:"Content Left Sidebar Sticky"}])
//- Include page content in content block
append content
include ../contents/layout-content-left-sticky-sidebar.html
append sidebar
include ../contents/sidebar-common.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