Offcanvas

Examples

Build hidden sidebars into your project for navigation, shopping carts, and more with a few classes and our JavaScript plugin.

Offcanvas on Bootstrap

Offcanvas

                                                                              
                                        <a class="btn btn-primary" data-bs-toggle="offcanvas" href="#offcanvasExample" role="button" aria-controls="offcanvasExample">
                                            Link with href
                                        </a>
                                        <button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasExample" aria-controls="offcanvasExample">
                                            Button with data-bs-target
                                        </button>

                                        <div class="offcanvas offcanvas-start" tabindex="-1" id="offcanvasExample" aria-labelledby="offcanvasExampleLabel">
                                            <div class="offcanvas-header">
                                                <h5 class="offcanvas-title" id="offcanvasExampleLabel">Offcanvas</h5>
                                                <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
                                            </div> <!-- end offcanvas-header-->

                                            <div class="offcanvas-body">
                                                <div>
                                                    Some text as placeholder. In real life you can have the elements you have chosen. Like, text,
                                                    images, lists, etc.
                                                </div>
                                                <h5 class="mt-3">List</h5>
                                                <ul class="ps-3">
                                                    <li class="">Nemo enim ipsam voluptatem quia aspernatur</li>
                                                    <li class="">Neque porro quisquam est, qui dolorem</li>
                                                    <li class="">Quis autem vel eum iure qui in ea</li>
                                                </ul>

                                                <ul class="ps-3">
                                                    <li class="">At vero eos et accusamus et iusto odio dignissimos</li>
                                                    <li class="">Et harum quidem rerum facilis</li>
                                                    <li class="">Temporibus autem quibusdam et aut officiis</li>
                                                </ul>
                                            </div> <!-- end offcanvas-body-->
                                        </div> <!-- end offcanvas-->
                                    
                                

You can trigger an offcanvas using a link with href or a button with data-bs-target, but both must include data-bs-toggle="offcanvas".

Link with href
Offcanvas
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
List
  • Nemo enim ipsam voluptatem quia aspernatur
  • Neque porro quisquam est, qui dolorem
  • Quis autem vel eum iure qui in ea
  • At vero eos et accusamus et iusto odio dignissimos
  • Et harum quidem rerum facilis
  • Temporibus autem quibusdam et aut officiis

Offcanvas Backdrop

                                    
                                        <!-- Enable body scrolling -->
                                        <button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasScrolling" aria-controls="offcanvasScrolling">Enable body scrolling</button>
                                        <!-- Enable backdrop (default) -->
                                        <button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasWithBackdrop" aria-controls="offcanvasWithBackdrop">Enable backdrop (default)</button>
                                        <!-- Enable both scrolling & backdrop -->
                                        <button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasWithBothOptions" aria-controls="offcanvasWithBothOptions">Enable both scrolling & backdrop</button>
                                        
                                        <div class="offcanvas offcanvas-start" data-bs-scroll="true" data-bs-backdrop="false" tabindex="-1" id="offcanvasScrolling" aria-labelledby="offcanvasScrollingLabel">
                                            <div class="offcanvas-header">
                                                <h5 class="offcanvas-title" id="offcanvasScrollingLabel">Colored with scrolling</h5>
                                                <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
                                            </div> <!-- end offcanvas-header-->
                                            <div class="offcanvas-body">
                                                <div>
                                                    Some text as placeholder. In real life you can have the elements you have chosen. Like, text,
                                                    images, lists, etc.
                                                </div>
                                                <h5 class="mt-3">List</h5>
                                                <ul class="ps-3">
                                                    <li class="">Nemo enim ipsam voluptatem quia aspernatur</li>
                                                    <li class="">Neque porro quisquam est, qui dolorem</li>
                                                    <li class="">Quis autem vel eum iure qui in ea</li>
                                                </ul>
        
                                                <ul class="ps-3">
                                                    <li class="">At vero eos et accusamus et iusto odio dignissimos</li>
                                                    <li class="">Et harum quidem rerum facilis</li>
                                                    <li class="">Temporibus autem quibusdam et aut officiis</li>
                                                </ul>
                                            </div> <!-- end offcanvas-body-->
                                        </div> <!-- end offcanvas-->

                                        <div class="offcanvas offcanvas-start" tabindex="-1" id="offcanvasWithBackdrop" aria-labelledby="offcanvasWithBackdropLabel">
                                            <div class="offcanvas-header">
                                                <h5 class="offcanvas-title" id="offcanvasWithBackdropLabel">Offcanvas with backdrop</h5>
                                                <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
                                            </div> <!-- end offcanvas-header-->
        
                                            <div class="offcanvas-body">
                                                <div>
                                                    Some text as placeholder. In real life you can have the elements you have chosen. Like, text,
                                                    images, lists, etc.
                                                </div>
                                                <h5 class="mt-3">List</h5>
                                                <ul class="ps-3">
                                                    <li class="">Nemo enim ipsam voluptatem quia aspernatur</li>
                                                    <li class="">Neque porro quisquam est, qui dolorem</li>
                                                    <li class="">Quis autem vel eum iure qui in ea</li>
                                                </ul>
        
                                                <ul class="ps-3">
                                                    <li class="">At vero eos et accusamus et iusto odio dignissimos</li>
                                                    <li class="">Et harum quidem rerum facilis</li>
                                                    <li class="">Temporibus autem quibusdam et aut officiis</li>
                                                </ul>
                                            </div> <!-- end offcanvas-body-->
                                        </div> <!-- end offcanvas-->
        
                                        <div class="offcanvas offcanvas-start" data-bs-scroll="true" tabindex="-1" id="offcanvasWithBothOptions" aria-labelledby="offcanvasWithBothOptionsLabel">
                                            <div class="offcanvas-header">
                                                <h5 class="offcanvas-title" id="offcanvasWithBothOptionsLabel">Backdroped with scrolling</h5>
                                                <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
                                            </div> <!-- end offcanvas-header-->
        
                                            <div class="offcanvas-body">
                                                <div>
                                                    Some text as placeholder. In real life you can have the elements you have chosen. Like, text,
                                                    images, lists, etc.
                                                </div>
                                                <h5 class="mt-3">List</h5>
                                                <ul class="ps-3">
                                                    <li class="">Nemo enim ipsam voluptatem quia aspernatur</li>
                                                    <li class="">Neque porro quisquam est, qui dolorem</li>
                                                    <li class="">Quis autem vel eum iure qui in ea</li>
                                                </ul>
        
                                                <ul class="ps-3">
                                                    <li class="">At vero eos et accusamus et iusto odio dignissimos</li>
                                                    <li class="">Et harum quidem rerum facilis</li>
                                                    <li class="">Temporibus autem quibusdam et aut officiis</li>
                                                </ul>
                                            </div> <!-- end offcanvas-body-->
                                        </div> <!-- end offcanvas-->
                                    
                                

When an offcanvas and its backdrop are visible, <body> scrolling is disabled. Use data-bs-scroll to enable scrolling and data-bs-backdrop to control the backdrop visibility.

Colored with scrolling
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
List
  • Nemo enim ipsam voluptatem quia aspernatur
  • Neque porro quisquam est, qui dolorem
  • Quis autem vel eum iure qui in ea
  • At vero eos et accusamus et iusto odio dignissimos
  • Et harum quidem rerum facilis
  • Temporibus autem quibusdam et aut officiis
Offcanvas with backdrop
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
List
  • Nemo enim ipsam voluptatem quia aspernatur
  • Neque porro quisquam est, qui dolorem
  • Quis autem vel eum iure qui in ea
  • At vero eos et accusamus et iusto odio dignissimos
  • Et harum quidem rerum facilis
  • Temporibus autem quibusdam et aut officiis
Backdroped with scrolling
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
List
  • Nemo enim ipsam voluptatem quia aspernatur
  • Neque porro quisquam est, qui dolorem
  • Quis autem vel eum iure qui in ea
  • At vero eos et accusamus et iusto odio dignissimos
  • Et harum quidem rerum facilis
  • Temporibus autem quibusdam et aut officiis

Offcanvas Placement

                                    
                                        <!-- Toggle Top offcanvas -->
                                        <button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasTop" aria-controls="offcanvasTop">Toggle Top offcanvas</button>
                                        <!-- Toggle right offcanvas -->
                                        <button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasRight" aria-controls="offcanvasRight">Toggle right offcanvas</button>
                                        <!-- Toggle bottom offcanvas -->
                                        <button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasBottom" aria-controls="offcanvasBottom">Toggle bottom offcanvas</button>
                                        <!-- Toggle Left offcanvas -->
                                        <button class="btn btn-primary mt-2 mt-lg-0" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasLeft" aria-controls="offcanvasLeft">Toggle Left offcanvas</button>
                                   
                                        <div class="offcanvas offcanvas-end" tabindex="-1" id="offcanvasRight" aria-labelledby="offcanvasRightLabel">
                                            <div class="offcanvas-header">
                                                <h5 id="offcanvasRightLabel">Offcanvas right</h5>
                                                <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
                                            </div> <!-- end offcanvas-header-->

                                            <div class="offcanvas-body">
                                                <div>
                                                    Some text as placeholder. In real life you can have the elements you have chosen. Like, text,
                                                    images, lists, etc.
                                                </div>
                                                <h5 class="mt-3">List</h5>
                                                <ul class="ps-3">
                                                    <li class="">Nemo enim ipsam voluptatem quia aspernatur</li>
                                                    <li class="">Neque porro quisquam est, qui dolorem</li>
                                                    <li class="">Quis autem vel eum iure qui in ea</li>
                                                </ul>
                                            </div> <!-- end offcanvas-body-->
                                        </div> <!-- end offcanvas-->

                                        <div class="offcanvas offcanvas-bottom" tabindex="-1" id="offcanvasBottom" aria-labelledby="offcanvasBottomLabel">
                                            <div class="offcanvas-header">
                                                <h5 class="offcanvas-title" id="offcanvasBottomLabel">Offcanvas bottom</h5>
                                                <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
                                            </div> <!-- end offcanvas-header-->

                                            <div class="offcanvas-body">
                                                <div>
                                                    Some text as placeholder. In real life you can have the elements you have chosen. Like, text,
                                                    images, lists, etc.
                                                </div>
                                                <h5 class="mt-3">List</h5>
                                                <ul class="ps-3">
                                                    <li class="">Nemo enim ipsam voluptatem quia aspernatur</li>
                                                    <li class="">Neque porro quisquam est, qui dolorem</li>
                                                    <li class="">Quis autem vel eum iure qui in ea</li>
                                                </ul>
                                            </div> <!-- end offcanvas-body-->
                                        </div> <!-- end offcanvas-->

                                        <div class="offcanvas offcanvas-start" tabindex="-1" id="offcanvasLeft" aria-labelledby="offcanvasLeftLabel">
                                            <div class="offcanvas-header">
                                                <h5 id="offcanvasLeftLabel">Offcanvas Left</h5>
                                                <button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
                                            </div> <!-- end offcanvas-header-->

                                            <div class="offcanvas-body">
                                                <div>
                                                    Some text as placeholder. In real life you can have the elements you have chosen. Like, text,
                                                    images, lists, etc.
                                                </div>
                                                <h5 class="mt-3">List</h5>
                                                <ul class="ps-3">
                                                    <li class="">Nemo enim ipsam voluptatem quia aspernatur</li>
                                                    <li class="">Neque porro quisquam est, qui dolorem</li>
                                                    <li class="">Quis autem vel eum iure qui in ea</li>
                                                </ul>
                                            </div> <!-- end offcanvas-body-->
                                        </div> <!-- end offcanvas-->
                                    
                                

.offcanvas-start positions the offcanvas on the left, .offcanvas-end on the right, .offcanvas-top displays it from the top, and .offcanvas-bottom displays it from the bottom of the viewport.

Offcanvas Top
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
List
  • Nemo enim ipsam voluptatem quia aspernatur
  • Neque porro quisquam est, qui dolorem
  • Quis autem vel eum iure qui in ea
Offcanvas right
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
List
  • Nemo enim ipsam voluptatem quia aspernatur
  • Neque porro quisquam est, qui dolorem
  • Quis autem vel eum iure qui in ea
Offcanvas bottom
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
List
  • Nemo enim ipsam voluptatem quia aspernatur
  • Neque porro quisquam est, qui dolorem
  • Quis autem vel eum iure qui in ea
Offcanvas Left
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
List
  • Nemo enim ipsam voluptatem quia aspernatur
  • Neque porro quisquam est, qui dolorem
  • Quis autem vel eum iure qui in ea

Dark Offcanvas

                                    
                                        <button class="btn btn-primary" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasDark" aria-controls="offcanvasDark">Dark offcanvas</button>

                                        <div class="offcanvas offcanvas-start text-bg-dark" tabindex="-1" id="offcanvasDark" aria-labelledby="offcanvasDarkLabel">
                                            <div class="offcanvas-header">
                                                <h5 id="offcanvasDarkLabel">Dark Offcanvas</h5>
                                                <button type="button" class="btn-close btn-close-white" data-bs-dismiss="offcanvas" aria-label="Close"></button>
                                            </div> <!-- end offcanvas-header-->
        
                                            <div class="offcanvas-body">
                                                <div>
                                                    Some text as placeholder. In real life you can have the elements you have chosen. Like, text,
                                                    images, lists, etc.
                                                </div>
                                                <h5 class="mt-3">List</h5>
                                                <ul class="ps-3">
                                                    <li class="">Nemo enim ipsam voluptatem quia aspernatur</li>
                                                    <li class="">Neque porro quisquam est, qui dolorem</li>
                                                    <li class="">Quis autem vel eum iure qui in ea</li>
                                                </ul>
                                            </div> <!-- end offcanvas-body-->
                                        </div> <!-- end offcanvas-->
                                    
                                

Customize the look of offcanvases using utility classes to suit different themes, such as dark navbars. Add .text-bg-dark to .offcanvas and .btn-close-white to .btn-close for dark styling.

Dark Offcanvas
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
List
  • Nemo enim ipsam voluptatem quia aspernatur
  • Neque porro quisquam est, qui dolorem
  • Quis autem vel eum iure qui in ea
© 2014 - Inspinia By WebAppLayers
10GB of 250GB Free.
Admin Customizer

Easily configure layout, styles, and preferences for your admin interface.

Select Theme
Classic
Material
Modern
SaaS
Flat
Minimal
Galaxy
Color Scheme
Light
Dark
System
Topbar Color
Light
Dark
Gray
Gradient
Sidenav Color
Light
Dark
Gray
Gradient
Image
Sidebar Size
Default
Compact
Condensed
On Hover
On Hover - Show
Offcanvas
Layout Position