From 29e9a64601c55dff315a1ea2ff909a48b3576edc Mon Sep 17 00:00:00 2001 From: Brett Mason Date: Thu, 1 Dec 2016 19:23:05 +0000 Subject: [PATCH] Set `fixed` as the default off canvas behaviour. Remove the $offcanvas-position` variable as its no longer needed. Generate a `off-canvas-absolute` class to be used to set a menu as absolute positioned. Add an absolute visual test. --- scss/components/_off-canvas.scss | 12 +-- test/visual/offcanvas/absolute.html | 123 ++++++++++++++++++++++++++++ 2 files changed, 127 insertions(+), 8 deletions(-) create mode 100644 test/visual/offcanvas/absolute.html diff --git a/scss/components/_off-canvas.scss b/scss/components/_off-canvas.scss index 0509caebc..5850e8cef 100644 --- a/scss/components/_off-canvas.scss +++ b/scss/components/_off-canvas.scss @@ -22,10 +22,6 @@ $offcanvas-background: $light-gray !default; /// @type Shadow $offcanvas-shadow: 0 0 10px rgba($black, 0.7) !default; -/// If `true`, an off-canvas panel will be fixed-position, and scroll with the screen. Otherwise it will be absolute positioned. -/// @type Bool -$offcanvas-fixed: false !default; - /// Z-index of an off-canvas panel with the `push` transition. /// @type Number $offcanvas-push-zindex: 1 !default; @@ -103,7 +99,7 @@ $maincontent-class: 'off-canvas-content' !default; @mixin off-canvas-base( $background: $offcanvas-background, $transition: $offcanvas-transition-length $offcanvas-transition-timing, - $fixed: $offcanvas-fixed + $fixed: true ) { @include disable-mouse-outline; @@ -284,9 +280,9 @@ $content: $maincontent-class @include off-canvas-base; } - // Off-canvas container with fixed position - .off-canvas-fixed { - @include off-canvas-base($fixed: true); + // Off-canvas container with absolute position + .off-canvas-absolute { + @include off-canvas-base($fixed: false); } // Off-canvas position classes diff --git a/test/visual/offcanvas/absolute.html b/test/visual/offcanvas/absolute.html new file mode 100644 index 000000000..fbca25382 --- /dev/null +++ b/test/visual/offcanvas/absolute.html @@ -0,0 +1,123 @@ + + + + + + + Off canvas absolute test + + + + + +
+ +
+ +
+ +

This is a left off-canvas panel and absolute positioned.

+
+ +
+ +

This is a right off-canvas panel and absolute positioned.

+
+ +
+ +

This is a top off-canvas panel and absolute positioned.

+
+ +
+ +

This is a bottom off-canvas panel and absolute positioned.

+
+ +
+
+ +
+ + + + +
+ +

This test demonstrates the `off-canvas-absolute` class.

+ +

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin eros massa, lacinia sed rutrum non, sodales quis urna. In hac habitasse platea dictumst. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vivamus in rutrum magna, a varius lorem. Suspendisse nec nisi massa. Sed id lacus feugiat, commodo risus id, vulputate odio. Quisque aliquam lacus id mi euismod, ut sodales odio porttitor. Donec finibus dui vitae odio ultricies, sit amet volutpat risus bibendum. Nulla sagittis rhoncus fermentum. Nulla nisi mi, cursus posuere mollis in, faucibus ut lacus. + + Morbi ultrices enim nec molestie luctus. Vestibulum nec leo id leo elementum tincidunt in ut velit. Sed sit amet ante egestas, hendrerit est nec, euismod tortor. Donec semper erat orci, id posuere mauris rutrum at. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Integer a orci luctus, pellentesque arcu sit amet, porta lacus. Mauris non blandit eros, ut euismod felis. Sed maximus dolor a finibus consequat. Integer nisl odio, interdum sed tempus et, ultrices vel augue. Vivamus at tincidunt purus, sit amet interdum magna. Nam sit amet efficitur leo. Nullam ac varius diam, pellentesque laoreet diam.

+
+
+ +
+ +
+ +
+ +

This is a left off-canvas panel and absolute positioned.

+
+ +
+ +

This is a right off-canvas panel and absolute positioned.

+
+ +
+ +

This is a top off-canvas panel and absolute positioned.

+
+ +
+ +

This is a bottom off-canvas panel and absolute positioned.

+
+ +
+
+ +
+ + + + +
+ +

This test demonstrates the `off-canvas-absolute` class.

+ +

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin eros massa, lacinia sed rutrum non, sodales quis urna. In hac habitasse platea dictumst. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vivamus in rutrum magna, a varius lorem. Suspendisse nec nisi massa. Sed id lacus feugiat, commodo risus id, vulputate odio. Quisque aliquam lacus id mi euismod, ut sodales odio porttitor. Donec finibus dui vitae odio ultricies, sit amet volutpat risus bibendum. Nulla sagittis rhoncus fermentum. Nulla nisi mi, cursus posuere mollis in, faucibus ut lacus. + + Morbi ultrices enim nec molestie luctus. Vestibulum nec leo id leo elementum tincidunt in ut velit. Sed sit amet ante egestas, hendrerit est nec, euismod tortor. Donec semper erat orci, id posuere mauris rutrum at. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Integer a orci luctus, pellentesque arcu sit amet, porta lacus. Mauris non blandit eros, ut euismod felis. Sed maximus dolor a finibus consequat. Integer nisl odio, interdum sed tempus et, ultrices vel augue. Vivamus at tincidunt purus, sit amet interdum magna. Nam sit amet efficitur leo. Nullam ac varius diam, pellentesque laoreet diam.

+
+
+ +
+ +
+ + + + + + -- 2.47.2