From 7c94f32bb2be63370cdc45ec860efe8e57a62ebe Mon Sep 17 00:00:00 2001 From: craftwerk Date: Thu, 1 Apr 2021 19:24:17 +0200 Subject: [PATCH] Add new offcanvas support to navbars Co-Authored-By: craftwerk <1193597+craftwerk@users.noreply.github.com> --- scss/_navbar.scss | 31 ++++++++++- site/content/docs/5.0/components/navbar.md | 64 ++++++++++++++++++++++ 2 files changed, 94 insertions(+), 1 deletion(-) diff --git a/scss/_navbar.scss b/scss/_navbar.scss index 2ccef11b7c27..a395ede6597c 100644 --- a/scss/_navbar.scss +++ b/scss/_navbar.scss @@ -193,13 +193,42 @@ .navbar-toggler { display: none; } + + .offcanvas-header { + display: none; + } + + .offcanvas { + position: inherit; + bottom: 0; + z-index: 1000; + flex-grow: 1; + visibility: visible !important; /* stylelint-disable-line declaration-no-important */ + background-color: transparent; + border-right: 0; + border-left: 0; + @include transition(none); + transform: none; + } + .offcanvas-top, + .offcanvas-bottom { + height: auto; + border-top: 0; + border-bottom: 0; + } + + .offcanvas-body { + display: flex; + flex-grow: 0; + padding: 0; + overflow-y: visible; + } } } } } // scss-docs-end navbar-expand-loop - // Navbar themes // // Styles for switching between navbars with light or dark background. diff --git a/site/content/docs/5.0/components/navbar.md b/site/content/docs/5.0/components/navbar.md index 7b57fd5c6273..6e4bb6408dcb 100644 --- a/site/content/docs/5.0/components/navbar.md +++ b/site/content/docs/5.0/components/navbar.md @@ -655,6 +655,70 @@ Sometimes you want to use the collapse plugin to trigger a container element for When you do this, we recommend including additional JavaScript to move the focus programmatically to the container when it is opened. Otherwise, keyboard users and users of assistive technologies will likely have a hard time finding the newly revealed content - particularly if the container that was opened comes *before* the toggler in the document's structure. We also recommend making sure that the toggler has the `aria-controls` attribute, pointing to the `id` of the content container. In theory, this allows assistive technology users to jump directly from the toggler to the container it controls–but support for this is currently quite patchy. +### Offcanvas + +Transform your expanding and collapsing navbar into an offcanvas drawer with the offcanvas plugin. We extend both the offcanvas default styles and use our `.navbar-expand-*` classes to create a dynamic and flexible navigation sidebar. + +For example, to create an offcanvas navbar that expands into a normal navbar at the `xl` breakpoint, use `.navbar-expand-xl` and an offcanvas component around your navbar content. + +{{< example >}} + +{{< /example >}} + +For an offcanvas navbar that is always collapsed across all breakpoints, omit the `.navbar-expand-*` class entirely. + +```html + +``` + ## Sass ### Variables